public final class io.vertx.ext.auth.impl.cose.CWK
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: io.vertx.ext.auth.impl.cose.CWK
  super_class: java.lang.Object
{
  private static final java.util.Map<java.lang.String, io.vertx.ext.auth.impl.cose.CWK$NV> COSE_LABELS;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lio/vertx/ext/auth/impl/cose/CWK$NV;>;

  private static final java.util.Map<java.lang.String, io.vertx.ext.auth.impl.cose.CWK$NV> EC_KEY_PARAMS;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lio/vertx/ext/auth/impl/cose/CWK$NV;>;

  private static final java.util.Map<java.lang.String, io.vertx.ext.auth.impl.cose.CWK$NV> OKP_KEY_PARAMS;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lio/vertx/ext/auth/impl/cose/CWK$NV;>;

  private static final java.util.Map<java.lang.String, io.vertx.ext.auth.impl.cose.CWK$NV> RSA_KEY_PARAMS;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lio/vertx/ext/auth/impl/cose/CWK$NV;>;

  private static final java.util.Map<java.lang.String, java.util.Map<java.lang.String, io.vertx.ext.auth.impl.cose.CWK$NV>> KEY_PARAMS;
    descriptor: Ljava/util/Map;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Lio/vertx/ext/auth/impl/cose/CWK$NV;>;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 64
            new io.vertx.ext.auth.impl.cose.CWK$1
            dup
            invokespecial io.vertx.ext.auth.impl.cose.CWK$1.<init>:()V
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic io.vertx.ext.auth.impl.cose.CWK.COSE_LABELS:Ljava/util/Map;
         1: .line 79
            new io.vertx.ext.auth.impl.cose.CWK$2
            dup
            invokespecial io.vertx.ext.auth.impl.cose.CWK$2.<init>:()V
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic io.vertx.ext.auth.impl.cose.CWK.EC_KEY_PARAMS:Ljava/util/Map;
         2: .line 93
            new io.vertx.ext.auth.impl.cose.CWK$3
            dup
            invokespecial io.vertx.ext.auth.impl.cose.CWK$3.<init>:()V
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic io.vertx.ext.auth.impl.cose.CWK.OKP_KEY_PARAMS:Ljava/util/Map;
         3: .line 107
            new io.vertx.ext.auth.impl.cose.CWK$4
            dup
            invokespecial io.vertx.ext.auth.impl.cose.CWK$4.<init>:()V
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic io.vertx.ext.auth.impl.cose.CWK.RSA_KEY_PARAMS:Ljava/util/Map;
         4: .line 134
            new io.vertx.ext.auth.impl.cose.CWK$5
            dup
            invokespecial io.vertx.ext.auth.impl.cose.CWK$5.<init>:()V
            invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
            putstatic io.vertx.ext.auth.impl.cose.CWK.KEY_PARAMS:Ljava/util/Map;
         5: .line 138
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.auth.impl.cose.CWK this
         0: .line 42
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // io.vertx.ext.auth.impl.cose.CWK this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/auth/impl/cose/CWK;

  public static io.vertx.ext.auth.impl.jose.JWK toJWK(java.lang.Iterable<java.util.Map$Entry<java.lang.String, java.lang.Object>>);
    descriptor: (Ljava/lang/Iterable;)Lio/vertx/ext/auth/impl/jose/JWK;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=1
        start local 0 // java.lang.Iterable coseMap
         0: .line 141
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            astore 1 /* retKey */
        start local 1 // io.vertx.core.json.JsonObject retKey
         1: .line 142
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 2 /* extraMap */
        start local 2 // java.util.Map extraMap
         2: .line 145
            aload 0 /* coseMap */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 13
      StackMap locals: java.lang.Iterable io.vertx.core.json.JsonObject java.util.Map top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 3 /* kv */
        start local 3 // java.util.Map$Entry kv
         4: .line 146
            aload 3 /* kv */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 5 /* key */
        start local 5 // java.lang.String key
         5: .line 147
            aload 3 /* kv */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            astore 6 /* value */
        start local 6 // java.lang.String value
         6: .line 149
            getstatic io.vertx.ext.auth.impl.cose.CWK.COSE_LABELS:Ljava/util/Map;
            aload 5 /* key */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 9
         7: .line 150
            aload 2 /* extraMap */
            aload 5 /* key */
            aload 6 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 151
            goto 13
         9: .line 154
      StackMap locals: java.lang.Iterable io.vertx.core.json.JsonObject java.util.Map java.util.Map$Entry java.util.Iterator java.lang.String java.lang.String
      StackMap stack:
            getstatic io.vertx.ext.auth.impl.cose.CWK.COSE_LABELS:Ljava/util/Map;
            aload 5 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.vertx.ext.auth.impl.cose.CWK$NV
            getfield io.vertx.ext.auth.impl.cose.CWK$NV.name:Ljava/lang/String;
            astore 7 /* name */
        start local 7 // java.lang.String name
        10: .line 155
            getstatic io.vertx.ext.auth.impl.cose.CWK.COSE_LABELS:Ljava/util/Map;
            aload 5 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.vertx.ext.auth.impl.cose.CWK$NV
            getfield io.vertx.ext.auth.impl.cose.CWK$NV.values:Ljava/util/Map;
            aload 6 /* value */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 12
        11: .line 156
            getstatic io.vertx.ext.auth.impl.cose.CWK.COSE_LABELS:Ljava/util/Map;
            aload 5 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.vertx.ext.auth.impl.cose.CWK$NV
            getfield io.vertx.ext.auth.impl.cose.CWK$NV.values:Ljava/util/Map;
            aload 6 /* value */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* value */
        12: .line 159
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* retKey */
            aload 7 /* name */
            aload 6 /* value */
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
            pop
        end local 7 // java.lang.String name
        end local 6 // java.lang.String value
        end local 5 // java.lang.String key
        end local 3 // java.util.Map$Entry kv
        13: .line 145
      StackMap locals: java.lang.Iterable io.vertx.core.json.JsonObject java.util.Map top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        14: .line 162
            getstatic io.vertx.ext.auth.impl.cose.CWK.KEY_PARAMS:Ljava/util/Map;
            aload 1 /* retKey */
            ldc "kty"
            invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Map
            astore 3 /* keyParams */
        start local 3 // java.util.Map keyParams
        15: .line 165
            aload 2 /* extraMap */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 25
      StackMap locals: java.lang.Iterable io.vertx.core.json.JsonObject java.util.Map java.util.Map top java.util.Iterator
      StackMap stack:
        16: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 4 /* kv */
        start local 4 // java.util.Map$Entry kv
        17: .line 166
            aload 4 /* kv */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* key */
        start local 6 // java.lang.String key
        18: .line 167
            aload 4 /* kv */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* value */
        start local 7 // java.lang.String value
        19: .line 169
            aload 3 /* keyParams */
            aload 6 /* key */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 21
        20: .line 170
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown COSE key label: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* retKey */
            ldc "kty"
            invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 6 /* key */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 173
      StackMap locals: java.lang.Iterable io.vertx.core.json.JsonObject java.util.Map java.util.Map java.util.Map$Entry java.util.Iterator java.lang.String java.lang.String
      StackMap stack:
            aload 3 /* keyParams */
            aload 6 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.vertx.ext.auth.impl.cose.CWK$NV
            getfield io.vertx.ext.auth.impl.cose.CWK$NV.name:Ljava/lang/String;
            astore 8 /* name */
        start local 8 // java.lang.String name
        22: .line 175
            aload 3 /* keyParams */
            aload 6 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.vertx.ext.auth.impl.cose.CWK$NV
            getfield io.vertx.ext.auth.impl.cose.CWK$NV.values:Ljava/util/Map;
            aload 7 /* value */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifeq 24
        23: .line 176
            aload 3 /* keyParams */
            aload 6 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.vertx.ext.auth.impl.cose.CWK$NV
            getfield io.vertx.ext.auth.impl.cose.CWK$NV.values:Ljava/util/Map;
            aload 7 /* value */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* value */
        24: .line 179
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* retKey */
            aload 8 /* name */
            aload 7 /* value */
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
            pop
        end local 8 // java.lang.String name
        end local 7 // java.lang.String value
        end local 6 // java.lang.String key
        end local 4 // java.util.Map$Entry kv
        25: .line 165
      StackMap locals: java.lang.Iterable io.vertx.core.json.JsonObject java.util.Map java.util.Map top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        26: .line 182
            new io.vertx.ext.auth.impl.jose.JWK
            dup
            aload 1 /* retKey */
            invokespecial io.vertx.ext.auth.impl.jose.JWK.<init>:(Lio/vertx/core/json/JsonObject;)V
            areturn
        end local 3 // java.util.Map keyParams
        end local 2 // java.util.Map extraMap
        end local 1 // io.vertx.core.json.JsonObject retKey
        end local 0 // java.lang.Iterable coseMap
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0    coseMap  Ljava/lang/Iterable<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;>;
            1   27     1     retKey  Lio/vertx/core/json/JsonObject;
            2   27     2   extraMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            4   13     3         kv  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;
            5   13     5        key  Ljava/lang/String;
            6   13     6      value  Ljava/lang/String;
           10   13     7       name  Ljava/lang/String;
           15   27     3  keyParams  Ljava/util/Map<Ljava/lang/String;Lio/vertx/ext/auth/impl/cose/CWK$NV;>;
           17   25     4         kv  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
           18   25     6        key  Ljava/lang/String;
           19   25     7      value  Ljava/lang/String;
           22   25     8       name  Ljava/lang/String;
    Signature: (Ljava/lang/Iterable<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;>;)Lio/vertx/ext/auth/impl/jose/JWK;
    MethodParameters:
         Name  Flags
      coseMap  
}
SourceFile: "CWK.java"
NestMembers:
  io.vertx.ext.auth.impl.cose.CWK$1  io.vertx.ext.auth.impl.cose.CWK$2  io.vertx.ext.auth.impl.cose.CWK$3  io.vertx.ext.auth.impl.cose.CWK$4  io.vertx.ext.auth.impl.cose.CWK$5  io.vertx.ext.auth.impl.cose.CWK$NV
InnerClasses:
  io.vertx.ext.auth.impl.cose.CWK$1
  io.vertx.ext.auth.impl.cose.CWK$2
  io.vertx.ext.auth.impl.cose.CWK$3
  io.vertx.ext.auth.impl.cose.CWK$4
  io.vertx.ext.auth.impl.cose.CWK$5
  private NV = io.vertx.ext.auth.impl.cose.CWK$NV of io.vertx.ext.auth.impl.cose.CWK
  public abstract Entry = java.util.Map$Entry of java.util.Map