public class io.vertx.ext.web.impl.Utils extends io.vertx.core.impl.Utils
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.ext.web.impl.Utils
  super_class: io.vertx.core.impl.Utils
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.web.impl.Utils this
         0: .line 42
            aload 0 /* this */
            invokespecial io.vertx.core.impl.Utils.<init>:()V
            return
        end local 0 // io.vertx.ext.web.impl.Utils this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/web/impl/Utils;

  public static java.lang.ClassLoader getClassLoader();
    descriptor: ()Ljava/lang/ClassLoader;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 45
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
            astore 0 /* tccl */
        start local 0 // java.lang.ClassLoader tccl
         1: .line 46
            aload 0 /* tccl */
            ifnonnull 2
            ldc Lio/vertx/ext/web/impl/Utils;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            goto 3
      StackMap locals: java.lang.ClassLoader
      StackMap stack:
         2: aload 0 /* tccl */
      StackMap locals:
      StackMap stack: java.lang.ClassLoader
         3: areturn
        end local 0 // java.lang.ClassLoader tccl
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    4     0  tccl  Ljava/lang/ClassLoader;

  public static io.vertx.core.buffer.Buffer readResourceToBuffer(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/core/buffer/Buffer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=1
        start local 0 // java.lang.String resource
         0: .line 50
            invokestatic io.vertx.ext.web.impl.Utils.getClassLoader:()Ljava/lang/ClassLoader;
            astore 1 /* cl */
        start local 1 // java.lang.ClassLoader cl
         1: .line 52
            invokestatic io.vertx.core.buffer.Buffer.buffer:()Lio/vertx/core/buffer/Buffer;
            astore 2 /* buffer */
        start local 2 // io.vertx.core.buffer.Buffer buffer
         2: .line 53
            aconst_null
            astore 3
            aconst_null
            astore 4
         3: aload 1 /* cl */
            aload 0 /* resource */
            invokevirtual java.lang.ClassLoader.getResourceAsStream:(Ljava/lang/String;)Ljava/io/InputStream;
            astore 5 /* in */
        start local 5 // java.io.InputStream in
         4: .line 54
            aload 5 /* in */
            ifnonnull 7
         5: .line 68
            aload 5 /* in */
            ifnull 6
            aload 5 /* in */
            invokevirtual java.io.InputStream.close:()V
         6: .line 55
      StackMap locals: java.lang.String java.lang.ClassLoader io.vertx.core.buffer.Buffer java.lang.Throwable java.lang.Throwable java.io.InputStream
      StackMap stack:
            aconst_null
            areturn
         7: .line 58
      StackMap locals:
      StackMap stack:
            sipush 4096
            newarray 8
            astore 7 /* data */
        start local 7 // byte[] data
         8: .line 59
            goto 15
        start local 6 // int read
         9: .line 60
      StackMap locals: int byte[]
      StackMap stack:
            iload 6 /* read */
            aload 7 /* data */
            arraylength
            if_icmpne 12
        10: .line 61
            aload 2 /* buffer */
            aload 7 /* data */
            invokeinterface io.vertx.core.buffer.Buffer.appendBytes:([B)Lio/vertx/core/buffer/Buffer;
            pop
        11: .line 62
            goto 15
        12: .line 63
      StackMap locals:
      StackMap stack:
            iload 6 /* read */
            newarray 8
            astore 8 /* slice */
        start local 8 // byte[] slice
        13: .line 64
            aload 7 /* data */
            iconst_0
            aload 8 /* slice */
            iconst_0
            aload 8 /* slice */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 65
            aload 2 /* buffer */
            aload 8 /* slice */
            invokeinterface io.vertx.core.buffer.Buffer.appendBytes:([B)Lio/vertx/core/buffer/Buffer;
            pop
        end local 8 // byte[] slice
        end local 6 // int read
        15: .line 59
      StackMap locals: java.lang.String java.lang.ClassLoader io.vertx.core.buffer.Buffer java.lang.Throwable java.lang.Throwable java.io.InputStream top byte[]
      StackMap stack:
            aload 5 /* in */
            aload 7 /* data */
            iconst_0
            aload 7 /* data */
            arraylength
            invokevirtual java.io.InputStream.read:([BII)I
            dup
            istore 6 /* read */
        start local 6 // int read
        16: iconst_m1
            if_icmpne 9
        end local 7 // byte[] data
        end local 6 // int read
        17: .line 68
            aload 5 /* in */
            ifnull 23
            aload 5 /* in */
            invokevirtual java.io.InputStream.close:()V
            goto 23
      StackMap locals: java.lang.String java.lang.ClassLoader io.vertx.core.buffer.Buffer java.lang.Throwable java.lang.Throwable java.io.InputStream
      StackMap stack: java.lang.Throwable
        18: astore 3
            aload 5 /* in */
            ifnull 19
            aload 5 /* in */
            invokevirtual java.io.InputStream.close:()V
        end local 5 // java.io.InputStream in
      StackMap locals:
      StackMap stack:
        19: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 4
            aload 3
            ifnonnull 21
            aload 4
            astore 3
            goto 22
      StackMap locals:
      StackMap stack:
        21: aload 3
            aload 4
            if_acmpeq 22
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        22: aload 3
            athrow
        23: .line 69
      StackMap locals:
      StackMap stack:
            aload 2 /* buffer */
        24: areturn
        end local 2 // io.vertx.core.buffer.Buffer buffer
        25: .line 70
      StackMap locals: java.lang.String java.lang.ClassLoader
      StackMap stack: java.io.IOException
            astore 2 /* ioe */
        start local 2 // java.io.IOException ioe
        26: .line 71
            new java.lang.RuntimeException
            dup
            aload 2 /* ioe */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.io.IOException ioe
        end local 1 // java.lang.ClassLoader cl
        end local 0 // java.lang.String resource
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   27     0  resource  Ljava/lang/String;
            1   27     1        cl  Ljava/lang/ClassLoader;
            2   25     2    buffer  Lio/vertx/core/buffer/Buffer;
            4   19     5        in  Ljava/io/InputStream;
            9   15     6      read  I
           16   17     6      read  I
            8   17     7      data  [B
           13   15     8     slice  [B
           26   27     2       ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           4     5      18  any
           7    17      18  any
           3     6      20  any
           7    20      20  any
           1     6      25  Class java.io.IOException
           7    24      25  Class java.io.IOException
    MethodParameters:
          Name  Flags
      resource  

  public static java.lang.String readFileToString(io.vertx.core.Vertx, java.lang.String);
    descriptor: (Lio/vertx/core/Vertx;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // java.lang.String resource
         0: .line 79
            aload 0 /* vertx */
            aload 1 /* resource */
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            invokestatic io.vertx.ext.web.impl.Utils.readFileToString:(Lio/vertx/core/Vertx;Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String resource
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0     vertx  Lio/vertx/core/Vertx;
            0    1     1  resource  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      vertx     
      resource  

  public static java.lang.String readFileToString(io.vertx.core.Vertx, java.lang.String, java.nio.charset.Charset);
    descriptor: (Lio/vertx/core/Vertx;Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // java.lang.String resource
        start local 2 // java.nio.charset.Charset charset
         0: .line 87
            aload 0 /* vertx */
            invokeinterface io.vertx.core.Vertx.fileSystem:()Lio/vertx/core/file/FileSystem;
            aload 1 /* resource */
            invokeinterface io.vertx.core.file.FileSystem.readFileBlocking:(Ljava/lang/String;)Lio/vertx/core/buffer/Buffer;
            astore 3 /* buff */
        start local 3 // io.vertx.core.buffer.Buffer buff
         1: .line 88
            aload 3 /* buff */
            aload 2 /* charset */
            invokeinterface io.vertx.core.buffer.Buffer.toString:(Ljava/nio/charset/Charset;)Ljava/lang/String;
         2: areturn
        end local 3 // io.vertx.core.buffer.Buffer buff
         3: .line 89
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
         4: .line 90
            new io.vertx.core.VertxException
            dup
            aload 3 /* e */
            invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.Exception e
        end local 2 // java.nio.charset.Charset charset
        end local 1 // java.lang.String resource
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0     vertx  Lio/vertx/core/Vertx;
            0    5     1  resource  Ljava/lang/String;
            0    5     2   charset  Ljava/nio/charset/Charset;
            1    3     3      buff  Lio/vertx/core/buffer/Buffer;
            4    5     3         e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Exception
    MethodParameters:
          Name  Flags
      vertx     
      resource  
      charset   

  public static java.text.DateFormat createRFC1123DateTimeFormatter();
    descriptor: ()Ljava/text/DateFormat;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 95
            new java.text.SimpleDateFormat
            dup
            ldc "EEE, dd MMM yyyy HH:mm:ss zzz"
            getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
            invokespecial java.text.SimpleDateFormat.<init>:(Ljava/lang/String;Ljava/util/Locale;)V
            astore 0 /* dtf */
        start local 0 // java.text.DateFormat dtf
         1: .line 96
            aload 0 /* dtf */
            ldc "GMT"
            invokestatic java.util.TimeZone.getTimeZone:(Ljava/lang/String;)Ljava/util/TimeZone;
            invokevirtual java.text.DateFormat.setTimeZone:(Ljava/util/TimeZone;)V
         2: .line 97
            aload 0 /* dtf */
            areturn
        end local 0 // java.text.DateFormat dtf
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    3     0   dtf  Ljava/text/DateFormat;

  public static java.lang.String pathOffset(java.lang.String, io.vertx.ext.web.RoutingContext);
    descriptor: (Ljava/lang/String;Lio/vertx/ext/web/RoutingContext;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.lang.String path
        start local 1 // io.vertx.ext.web.RoutingContext context
         0: .line 101
            iconst_0
            istore 2 /* prefixLen */
        start local 2 // int prefixLen
         1: .line 102
            aload 1 /* context */
            invokeinterface io.vertx.ext.web.RoutingContext.mountPoint:()Ljava/lang/String;
            astore 3 /* mountPoint */
        start local 3 // java.lang.String mountPoint
         2: .line 103
            aload 3 /* mountPoint */
            ifnull 4
         3: .line 104
            aload 3 /* mountPoint */
            invokevirtual java.lang.String.length:()I
            istore 2 /* prefixLen */
         4: .line 106
      StackMap locals: int java.lang.String
      StackMap stack:
            aload 1 /* context */
            invokeinterface io.vertx.ext.web.RoutingContext.currentRoute:()Lio/vertx/ext/web/Route;
            invokeinterface io.vertx.ext.web.Route.getPath:()Ljava/lang/String;
            astore 4 /* routePath */
        start local 4 // java.lang.String routePath
         5: .line 107
            aload 4 /* routePath */
            ifnull 9
         6: .line 108
            iload 2 /* prefixLen */
            aload 4 /* routePath */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* prefixLen */
         7: .line 110
            aload 4 /* routePath */
            aload 4 /* routePath */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.charAt:(I)C
            bipush 47
            if_icmpne 9
         8: .line 111
            iinc 2 /* prefixLen */ -1
         9: .line 114
      StackMap locals: java.lang.String
      StackMap stack:
            iload 2 /* prefixLen */
            ifeq 10
            aload 0 /* path */
            iload 2 /* prefixLen */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            goto 11
      StackMap locals:
      StackMap stack:
        10: aload 0 /* path */
      StackMap locals:
      StackMap stack: java.lang.String
        11: areturn
        end local 4 // java.lang.String routePath
        end local 3 // java.lang.String mountPoint
        end local 2 // int prefixLen
        end local 1 // io.vertx.ext.web.RoutingContext context
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        path  Ljava/lang/String;
            0   12     1     context  Lio/vertx/ext/web/RoutingContext;
            1   12     2   prefixLen  I
            2   12     3  mountPoint  Ljava/lang/String;
            5   12     4   routePath  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      path     
      context  

  public static long secondsFactor(long);
    descriptor: (J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // long millis
         0: .line 118
            lload 0 /* millis */
            lload 0 /* millis */
            ldc 1000
            lrem
            lsub
            lreturn
        end local 0 // long millis
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  millis  J
    MethodParameters:
        Name  Flags
      millis  

  public static com.fasterxml.jackson.databind.JsonNode toJsonNode(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String object
         0: .line 123
            new com.fasterxml.jackson.databind.ObjectMapper
            dup
            invokespecial com.fasterxml.jackson.databind.ObjectMapper.<init>:()V
            aload 0 /* object */
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readTree:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
         1: areturn
         2: .line 124
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 1 /* e */
        start local 1 // java.io.IOException e
         3: .line 125
            aload 1 /* e */
            invokevirtual java.io.IOException.printStackTrace:()V
         4: .line 126
            aconst_null
            areturn
        end local 1 // java.io.IOException e
        end local 0 // java.lang.String object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0  object  Ljava/lang/String;
            3    5     1       e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    MethodParameters:
        Name  Flags
      object  

  public static com.fasterxml.jackson.databind.JsonNode toJsonNode(io.vertx.core.json.JsonObject);
    descriptor: (Lio/vertx/core/json/JsonObject;)Lcom/fasterxml/jackson/databind/JsonNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // io.vertx.core.json.JsonObject object
         0: .line 132
            new com.fasterxml.jackson.databind.ObjectMapper
            dup
            invokespecial com.fasterxml.jackson.databind.ObjectMapper.<init>:()V
            aload 0 /* object */
            invokevirtual io.vertx.core.json.JsonObject.encode:()Ljava/lang/String;
            invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readTree:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
         1: areturn
         2: .line 133
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 1 /* e */
        start local 1 // java.io.IOException e
         3: .line 134
            aload 1 /* e */
            invokevirtual java.io.IOException.printStackTrace:()V
         4: .line 135
            aconst_null
            areturn
        end local 1 // java.io.IOException e
        end local 0 // io.vertx.core.json.JsonObject object
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0  object  Lio/vertx/core/json/JsonObject;
            3    5     1       e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    MethodParameters:
        Name  Flags
      object  

  public static io.vertx.core.json.JsonObject toJsonObject(com.fasterxml.jackson.databind.JsonNode);
    descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)Lio/vertx/core/json/JsonObject;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.fasterxml.jackson.databind.JsonNode node
         0: .line 140
            new io.vertx.core.json.JsonObject
            dup
            aload 0 /* node */
            invokevirtual com.fasterxml.jackson.databind.JsonNode.toString:()Ljava/lang/String;
            invokespecial io.vertx.core.json.JsonObject.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // com.fasterxml.jackson.databind.JsonNode node
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  node  Lcom/fasterxml/jackson/databind/JsonNode;
    MethodParameters:
      Name  Flags
      node  

  public static io.vertx.core.json.JsonArray toJsonArray(com.fasterxml.jackson.databind.JsonNode);
    descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)Lio/vertx/core/json/JsonArray;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.fasterxml.jackson.databind.JsonNode node
         0: .line 144
            new io.vertx.core.json.JsonArray
            dup
            aload 0 /* node */
            invokevirtual com.fasterxml.jackson.databind.JsonNode.toString:()Ljava/lang/String;
            invokespecial io.vertx.core.json.JsonArray.<init>:(Ljava/lang/String;)V
            areturn
        end local 0 // com.fasterxml.jackson.databind.JsonNode node
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  node  Lcom/fasterxml/jackson/databind/JsonNode;
    MethodParameters:
      Name  Flags
      node  

  public static java.lang.Object toVertxJson(com.fasterxml.jackson.databind.JsonNode);
    descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.fasterxml.jackson.databind.JsonNode node
         0: .line 148
            aload 0 /* node */
            invokevirtual com.fasterxml.jackson.databind.JsonNode.isArray:()Z
            ifeq 2
         1: .line 149
            aload 0 /* node */
            invokestatic io.vertx.ext.web.impl.Utils.toJsonArray:(Lcom/fasterxml/jackson/databind/JsonNode;)Lio/vertx/core/json/JsonArray;
            areturn
         2: .line 150
      StackMap locals:
      StackMap stack:
            aload 0 /* node */
            invokevirtual com.fasterxml.jackson.databind.JsonNode.isObject:()Z
            ifeq 4
         3: .line 151
            aload 0 /* node */
            invokestatic io.vertx.ext.web.impl.Utils.toJsonObject:(Lcom/fasterxml/jackson/databind/JsonNode;)Lio/vertx/core/json/JsonObject;
            areturn
         4: .line 153
      StackMap locals:
      StackMap stack:
            aload 0 /* node */
            invokevirtual com.fasterxml.jackson.databind.JsonNode.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.fasterxml.jackson.databind.JsonNode node
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  node  Lcom/fasterxml/jackson/databind/JsonNode;
    MethodParameters:
      Name  Flags
      node  

  public static boolean isJsonContentType(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String contentType
         0: .line 157
            aload 0 /* contentType */
            ldc "application/json"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifne 1
            aload 0 /* contentType */
            ldc "+json"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // java.lang.String contentType
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0  contentType  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      contentType  

  public static boolean isXMLContentType(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String contentType
         0: .line 161
            aload 0 /* contentType */
            ldc "application/xml"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifne 1
            aload 0 /* contentType */
            ldc "text/xml"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifne 1
            aload 0 /* contentType */
            ldc "+xml"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // java.lang.String contentType
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0  contentType  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      contentType  

  public static void addToMapIfAbsent(io.vertx.core.MultiMap, java.lang.String, java.lang.String);
    descriptor: (Lio/vertx/core/MultiMap;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.MultiMap map
        start local 1 // java.lang.String key
        start local 2 // java.lang.String value
         0: .line 165
            aload 0 /* map */
            aload 1 /* key */
            invokeinterface io.vertx.core.MultiMap.contains:(Ljava/lang/String;)Z
            ifne 2
         1: .line 166
            aload 0 /* map */
            aload 1 /* key */
            aload 2 /* value */
            invokeinterface io.vertx.core.MultiMap.set:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/MultiMap;
            pop
         2: .line 168
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String value
        end local 1 // java.lang.String key
        end local 0 // io.vertx.core.MultiMap map
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0    map  Lio/vertx/core/MultiMap;
            0    3     1    key  Ljava/lang/String;
            0    3     2  value  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      map    
      key    
      value  
}
SourceFile: "Utils.java"