public class examples.AuthJWTExamples
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: examples.AuthJWTExamples
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // examples.AuthJWTExamples this
         0: .line 33
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lexamples/AuthJWTExamples;

  public void example6(io.vertx.core.Vertx);
    descriptor: (Lio/vertx/core/Vertx;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.core.Vertx vertx
         0: .line 37
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 38
            new io.vertx.ext.auth.KeyStoreOptions
            dup
            invokespecial io.vertx.ext.auth.KeyStoreOptions.<init>:()V
         2: .line 39
            ldc "keystore.jceks"
            invokevirtual io.vertx.ext.auth.KeyStoreOptions.setPath:(Ljava/lang/String;)Lio/vertx/ext/auth/KeyStoreOptions;
         3: .line 40
            ldc "secret"
            invokevirtual io.vertx.ext.auth.KeyStoreOptions.setPassword:(Ljava/lang/String;)Lio/vertx/ext/auth/KeyStoreOptions;
         4: .line 38
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.setKeyStore:(Lio/vertx/ext/auth/KeyStoreOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         5: .line 37
            astore 2 /* config */
        start local 2 // io.vertx.ext.auth.jwt.JWTAuthOptions config
         6: .line 42
            aload 1 /* vertx */
            aload 2 /* config */
            invokestatic io.vertx.ext.auth.jwt.JWTAuth.create:(Lio/vertx/core/Vertx;Lio/vertx/ext/auth/jwt/JWTAuthOptions;)Lio/vertx/ext/auth/jwt/JWTAuth;
            pop
         7: .line 43
            return
        end local 2 // io.vertx.ext.auth.jwt.JWTAuthOptions config
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lexamples/AuthJWTExamples;
            0    8     1   vertx  Lio/vertx/core/Vertx;
            6    8     2  config  Lio/vertx/ext/auth/jwt/JWTAuthOptions;
    MethodParameters:
       Name  Flags
      vertx  

  public void example7(io.vertx.core.Vertx, java.lang.String, java.lang.String);
    descriptor: (Lio/vertx/core/Vertx;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.core.Vertx vertx
        start local 2 // java.lang.String username
        start local 3 // java.lang.String password
         0: .line 47
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 48
            new io.vertx.ext.auth.KeyStoreOptions
            dup
            invokespecial io.vertx.ext.auth.KeyStoreOptions.<init>:()V
         2: .line 49
            ldc "keystore.jceks"
            invokevirtual io.vertx.ext.auth.KeyStoreOptions.setPath:(Ljava/lang/String;)Lio/vertx/ext/auth/KeyStoreOptions;
         3: .line 50
            ldc "secret"
            invokevirtual io.vertx.ext.auth.KeyStoreOptions.setPassword:(Ljava/lang/String;)Lio/vertx/ext/auth/KeyStoreOptions;
         4: .line 48
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.setKeyStore:(Lio/vertx/ext/auth/KeyStoreOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         5: .line 47
            astore 4 /* config */
        start local 4 // io.vertx.ext.auth.jwt.JWTAuthOptions config
         6: .line 52
            aload 1 /* vertx */
            aload 4 /* config */
            invokestatic io.vertx.ext.auth.jwt.JWTAuth.create:(Lio/vertx/core/Vertx;Lio/vertx/ext/auth/jwt/JWTAuthOptions;)Lio/vertx/ext/auth/jwt/JWTAuth;
            astore 5 /* provider */
        start local 5 // io.vertx.ext.auth.jwt.JWTAuth provider
         7: .line 55
            ldc "paulo"
            aload 2 /* username */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
            ldc "super_secret"
            aload 3 /* password */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         8: .line 56
            aload 5 /* provider */
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            ldc "sub"
            ldc "paulo"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
            new io.vertx.ext.jwt.JWTOptions
            dup
            invokespecial io.vertx.ext.jwt.JWTOptions.<init>:()V
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.generateToken:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/jwt/JWTOptions;)Ljava/lang/String;
            pop
         9: .line 60
      StackMap locals: io.vertx.ext.auth.jwt.JWTAuthOptions io.vertx.ext.auth.jwt.JWTAuth
      StackMap stack:
            return
        end local 5 // io.vertx.ext.auth.jwt.JWTAuth provider
        end local 4 // io.vertx.ext.auth.jwt.JWTAuthOptions config
        end local 3 // java.lang.String password
        end local 2 // java.lang.String username
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Lexamples/AuthJWTExamples;
            0   10     1     vertx  Lio/vertx/core/Vertx;
            0   10     2  username  Ljava/lang/String;
            0   10     3  password  Ljava/lang/String;
            6   10     4    config  Lio/vertx/ext/auth/jwt/JWTAuthOptions;
            7   10     5  provider  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
          Name  Flags
      vertx     
      username  
      password  

  public void example8(io.vertx.core.Vertx);
    descriptor: (Lio/vertx/core/Vertx;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.core.Vertx vertx
         0: .line 64
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 65
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 66
            ldc "RS256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 67
            ldc "BASE64-ENCODED-PUBLIC_KEY"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setPublicKey:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         4: .line 65
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         5: .line 64
            astore 2 /* config */
        start local 2 // io.vertx.ext.auth.jwt.JWTAuthOptions config
         6: .line 69
            aload 1 /* vertx */
            aload 2 /* config */
            invokestatic io.vertx.ext.auth.jwt.JWTAuth.create:(Lio/vertx/core/Vertx;Lio/vertx/ext/auth/jwt/JWTAuthOptions;)Lio/vertx/ext/auth/jwt/JWTAuth;
            pop
         7: .line 70
            return
        end local 2 // io.vertx.ext.auth.jwt.JWTAuthOptions config
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lexamples/AuthJWTExamples;
            0    8     1   vertx  Lio/vertx/core/Vertx;
            6    8     2  config  Lio/vertx/ext/auth/jwt/JWTAuthOptions;
    MethodParameters:
       Name  Flags
      vertx  

  public void example9(io.vertx.ext.auth.jwt.JWTAuth);
    descriptor: (Lio/vertx/ext/auth/jwt/JWTAuth;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
         0: .line 75
            aload 1 /* jwtAuth */
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            ldc "jwt"
            ldc "BASE64-ENCODED-STRING"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
            invokedynamic handle()Lio/vertx/core/Handler;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  examples/AuthJWTExamples.lambda$0(Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.authenticate:(Lio/vertx/core/json/JsonObject;Lio/vertx/core/Handler;)V
         1: .line 82
            return
        end local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lexamples/AuthJWTExamples;
            0    2     1  jwtAuth  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
         Name  Flags
      jwtAuth  

  public void example10(io.vertx.ext.auth.jwt.JWTAuth);
    descriptor: (Lio/vertx/ext/auth/jwt/JWTAuth;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
         0: .line 90
            aload 1 /* jwtAuth */
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         1: .line 91
            ldc "jwt"
            ldc "BASE64-ENCODED-STRING"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
         2: .line 92
            ldc "options"
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         3: .line 93
            ldc "ignoreExpiration"
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Boolean;)Lio/vertx/core/json/JsonObject;
         4: .line 92
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
         5: .line 93
            invokedynamic handle()Lio/vertx/core/Handler;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  examples/AuthJWTExamples.lambda$1(Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
         6: .line 90
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.authenticate:(Lio/vertx/core/json/JsonObject;Lio/vertx/core/Handler;)V
         7: .line 100
            return
        end local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lexamples/AuthJWTExamples;
            0    8     1  jwtAuth  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
         Name  Flags
      jwtAuth  

  public void example11(io.vertx.ext.auth.jwt.JWTAuth);
    descriptor: (Lio/vertx/ext/auth/jwt/JWTAuth;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
         0: .line 108
            aload 1 /* jwtAuth */
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         1: .line 109
            ldc "jwt"
            ldc "BASE64-ENCODED-STRING"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
         2: .line 110
            ldc "options"
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         3: .line 111
            ldc "audience"
            new io.vertx.core.json.JsonArray
            dup
            invokespecial io.vertx.core.json.JsonArray.<init>:()V
            ldc "paulo@server.com"
            invokevirtual io.vertx.core.json.JsonArray.add:(Ljava/lang/String;)Lio/vertx/core/json/JsonArray;
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Lio/vertx/core/json/JsonArray;)Lio/vertx/core/json/JsonObject;
         4: .line 110
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
         5: .line 111
            invokedynamic handle()Lio/vertx/core/Handler;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  examples/AuthJWTExamples.lambda$2(Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
         6: .line 108
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.authenticate:(Lio/vertx/core/json/JsonObject;Lio/vertx/core/Handler;)V
         7: .line 118
            return
        end local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lexamples/AuthJWTExamples;
            0    8     1  jwtAuth  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
         Name  Flags
      jwtAuth  

  public void example12(io.vertx.ext.auth.jwt.JWTAuth);
    descriptor: (Lio/vertx/ext/auth/jwt/JWTAuth;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
         0: .line 126
            aload 1 /* jwtAuth */
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         1: .line 127
            ldc "jwt"
            ldc "BASE64-ENCODED-STRING"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
         2: .line 128
            ldc "options"
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         3: .line 129
            ldc "issuer"
            ldc "mycorp.com"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
         4: .line 128
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
         5: .line 129
            invokedynamic handle()Lio/vertx/core/Handler;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  examples/AuthJWTExamples.lambda$3(Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
         6: .line 126
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.authenticate:(Lio/vertx/core/json/JsonObject;Lio/vertx/core/Handler;)V
         7: .line 136
            return
        end local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lexamples/AuthJWTExamples;
            0    8     1  jwtAuth  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
         Name  Flags
      jwtAuth  

  public void example13(io.vertx.ext.auth.User);
    descriptor: (Lio/vertx/ext/auth/User;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.ext.auth.User user
         0: .line 139
            aload 1 /* user */
            ldc "create-report"
            invokedynamic handle()Lio/vertx/core/Handler;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  examples/AuthJWTExamples.lambda$4(Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.ext.auth.User.isAuthorized:(Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/ext/auth/User;
            pop
         1: .line 144
            return
        end local 1 // io.vertx.ext.auth.User user
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lexamples/AuthJWTExamples;
            0    2     1  user  Lio/vertx/ext/auth/User;
    MethodParameters:
      Name  Flags
      user  

  public void example14(io.vertx.core.Vertx);
    descriptor: (Lio/vertx/core/Vertx;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.core.Vertx vertx
         0: .line 149
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         1: .line 150
            ldc "public-key"
            ldc "BASE64-ENCODED-PUBLIC_KEY"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
         2: .line 152
            ldc "permissionsClaimKey"
            ldc "realm_access/roles"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
         3: .line 149
            astore 2 /* config */
        start local 2 // io.vertx.core.json.JsonObject config
         4: .line 154
            aload 1 /* vertx */
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            aload 2 /* config */
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:(Lio/vertx/core/json/JsonObject;)V
            invokestatic io.vertx.ext.auth.jwt.JWTAuth.create:(Lio/vertx/core/Vertx;Lio/vertx/ext/auth/jwt/JWTAuthOptions;)Lio/vertx/ext/auth/jwt/JWTAuth;
            pop
         5: .line 155
            return
        end local 2 // io.vertx.core.json.JsonObject config
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lexamples/AuthJWTExamples;
            0    6     1   vertx  Lio/vertx/core/Vertx;
            4    6     2  config  Lio/vertx/core/json/JsonObject;
    MethodParameters:
       Name  Flags
      vertx  

  public void example15(io.vertx.core.Vertx);
    descriptor: (Lio/vertx/core/Vertx;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.core.Vertx vertx
         0: .line 158
            aload 1 /* vertx */
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 159
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 160
            ldc "RS256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 162
            ldc "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxPSbCQY5mBKFDIn1kggv\nWb4ChjrctqD4nFnJOJk4mpuZ/u3h2ZgeKJJkJv8+5oFO6vsEwF7/TqKXp0XDp6IH\nbyaOSWdkl535rCYR5AxDSjwnuSXsSp54pvB+fEEFDPFF81GHixepIbqXCB+BnCTg\nN65BqwNn/1Vgqv6+H3nweNlbTv8e/scEgbg6ZYcsnBBB9kYLp69FSwNWpvPmd60e\n3DWyIo3WCUmKlQgjHL4PHLKYwwKgOHG/aNl4hN4/wqTixCAHe6KdLnehLn71x+Z0\nSyXbWooftefpJP1wMbwlCpH3ikBzVIfHKLWT9QIOVoRgchPU3WAsZv/ePgl5i8Co\nqwIDAQAB"
         4: .line 161
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setPublicKey:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         5: .line 170
            ldc "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDE9JsJBjmYEoUM\nifWSCC9ZvgKGOty2oPicWck4mTiam5n+7eHZmB4okmQm/z7mgU7q+wTAXv9Oopen\nRcOnogdvJo5JZ2SXnfmsJhHkDENKPCe5JexKnnim8H58QQUM8UXzUYeLF6khupcI\nH4GcJOA3rkGrA2f/VWCq/r4fefB42VtO/x7+xwSBuDplhyycEEH2Rgunr0VLA1am\n8+Z3rR7cNbIijdYJSYqVCCMcvg8cspjDAqA4cb9o2XiE3j/CpOLEIAd7op0ud6Eu\nfvXH5nRLJdtaih+15+kk/XAxvCUKkfeKQHNUh8cotZP1Ag5WhGByE9TdYCxm/94+\nCXmLwKirAgMBAAECggEAeQ+M+BgOcK35gAKQoklLqZLEhHNL1SnOhnQd3h84DrhU\nCMF5UEFTUEbjLqE3rYGP25mdiw0ZSuFf7B5SrAhJH4YIcZAO4a7ll23zE0SCW+/r\nzr9DpX4Q1TP/2yowC4uGHpBfixxpBmVljkWnai20cCU5Ef/O/cAh4hkhDcHrEKwb\nm9nymKQt06YnvpCMKoHDdqzfB3eByoAKuGxo/sbi5LDpWalCabcg7w+WKIEU1PHb\nQi+RiDf3TzbQ6TYhAEH2rKM9JHbp02TO/r3QOoqHMITW6FKYvfiVFN+voS5zzAO3\nc5X4I+ICNzm+mnt8wElV1B6nO2hFg2PE9uVnlgB2GQKBgQD8xkjNhERaT7f78gBl\nch15DRDH0m1rz84PKRznoPrSEY/HlWddlGkn0sTnbVYKXVTvNytKSmznRZ7fSTJB\n2IhQV7+I0jeb7pyLllF5PdSQqKTk6oCeL8h8eDPN7awZ731zff1AGgJ3DJXlRTh/\nO6zj9nI8llvGzP30274I2/+cdwKBgQDHd/twbiHZZTDexYewP0ufQDtZP1Nk54fj\nEpkEuoTdEPymRoq7xo+Lqj5ewhAtVKQuz6aH4BeEtSCHhxy8OFLDBdoGCEd/WBpD\nf+82sfmGk+FxLyYkLxHCxsZdOb93zkUXPCoCrvNRaUFO1qq5Dk8eftGCdC3iETHE\n6h5avxHGbQKBgQCLHQVMNhL4MQ9slU8qhZc627n0fxbBUuhw54uE3s+rdQbQLKVq\nlxcYV6MOStojciIgVRh6FmPBFEvPTxVdr7G1pdU/k5IPO07kc6H7O9AUnPvDEFwg\nsuN/vRelqbwhufAs85XBBY99vWtxdpsVSt5nx2YvegCgdIj/jUAU2B7hGQKBgEgV\nsCRdaJYr35FiSTsEZMvUZp5GKFka4xzIp8vxq/pIHUXp0FEz3MRYbdnIwBfhssPH\n/yKzdUxcOLlBtry+jgo0nyn26/+1Uyh5n3VgtBBSePJyW5JQAFcnhqBCMlOVk5pl\n/7igiQYux486PNBLv4QByK0gV0SPejDzeqzIyB+xAoGAe5if7DAAKhH0r2M8vTkm\nJvbCFjwuvhjuI+A8AuS8zw634BHne2a1Fkvc8c3d9VDbqsHCtv2tVkxkKXPjVvtB\nDtzuwUbp6ebF+jOfPK0LDuJoTdTdiNjIcXJ7iTTI3cXUnUNWWphYnFogzPFq9CyL\n0fPinYmDJpkwMYHqQaLGQyg="
         6: .line 169
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setSecretKey:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         7: .line 159
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         8: .line 158
            invokestatic io.vertx.ext.auth.jwt.JWTAuth.create:(Lio/vertx/core/Vertx;Lio/vertx/ext/auth/jwt/JWTAuthOptions;)Lio/vertx/ext/auth/jwt/JWTAuth;
            astore 2 /* provider */
        start local 2 // io.vertx.ext.auth.jwt.JWTAuth provider
         9: .line 198
            aload 2 /* provider */
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            new io.vertx.ext.jwt.JWTOptions
            dup
            invokespecial io.vertx.ext.jwt.JWTOptions.<init>:()V
            ldc "RS256"
            invokevirtual io.vertx.ext.jwt.JWTOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/jwt/JWTOptions;
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.generateToken:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/jwt/JWTOptions;)Ljava/lang/String;
            pop
        10: .line 199
            return
        end local 2 // io.vertx.ext.auth.jwt.JWTAuth provider
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lexamples/AuthJWTExamples;
            0   11     1     vertx  Lio/vertx/core/Vertx;
            9   11     2  provider  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
       Name  Flags
      vertx  

  public void example16(io.vertx.core.Vertx);
    descriptor: (Lio/vertx/core/Vertx;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.core.Vertx vertx
         0: .line 202
            aload 1 /* vertx */
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 203
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 204
            ldc "HS256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 205
            ldc "keyboard cat"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setPublicKey:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         4: .line 206
            iconst_1
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setSymmetric:(Z)Lio/vertx/ext/auth/PubSecKeyOptions;
         5: .line 203
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         6: .line 202
            invokestatic io.vertx.ext.auth.jwt.JWTAuth.create:(Lio/vertx/core/Vertx;Lio/vertx/ext/auth/jwt/JWTAuthOptions;)Lio/vertx/ext/auth/jwt/JWTAuth;
            astore 2 /* provider */
        start local 2 // io.vertx.ext.auth.jwt.JWTAuth provider
         7: .line 208
            aload 2 /* provider */
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.generateToken:(Lio/vertx/core/json/JsonObject;)Ljava/lang/String;
            pop
         8: .line 209
            return
        end local 2 // io.vertx.ext.auth.jwt.JWTAuth provider
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lexamples/AuthJWTExamples;
            0    9     1     vertx  Lio/vertx/core/Vertx;
            7    9     2  provider  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
       Name  Flags
      vertx  

  public void example17(io.vertx.core.Vertx);
    descriptor: (Lio/vertx/core/Vertx;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.core.Vertx vertx
         0: .line 212
            aload 1 /* vertx */
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 213
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 214
            ldc "ES256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 216
            ldc "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgeRyEfU1NSHPTCuC9\nrwLZMukaWCH2Fk6q5w+XBYrKtLihRANCAAStpUnwKmSvBM9EI+W5QN3ALpvz6bh0\nSPCXyz5KfQZQuSj4f3l+xNERDUDaygIUdLjBXf/bc15ur2iZjcq4r0Mr"
         4: .line 215
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setSecretKey:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         5: .line 213
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         6: .line 212
            invokestatic io.vertx.ext.auth.jwt.JWTAuth.create:(Lio/vertx/core/Vertx;Lio/vertx/ext/auth/jwt/JWTAuthOptions;)Lio/vertx/ext/auth/jwt/JWTAuth;
            astore 2 /* provider */
        start local 2 // io.vertx.ext.auth.jwt.JWTAuth provider
         7: .line 221
            aload 2 /* provider */
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            new io.vertx.ext.jwt.JWTOptions
            dup
            invokespecial io.vertx.ext.jwt.JWTOptions.<init>:()V
            ldc "ES256"
            invokevirtual io.vertx.ext.jwt.JWTOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/jwt/JWTOptions;
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.generateToken:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/jwt/JWTOptions;)Ljava/lang/String;
            pop
         8: .line 222
            return
        end local 2 // io.vertx.ext.auth.jwt.JWTAuth provider
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lexamples/AuthJWTExamples;
            0    9     1     vertx  Lio/vertx/core/Vertx;
            7    9     2  provider  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
       Name  Flags
      vertx  

  public void example18(io.vertx.core.Vertx);
    descriptor: (Lio/vertx/core/Vertx;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.core.Vertx vertx
         0: .line 225
            aload 1 /* vertx */
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 226
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 227
            ldc "ES256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 229
            ldc "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEraVJ8CpkrwTPRCPluUDdwC6b8+m4\ndEjwl8s+Sn0GULko+H95fsTREQ1A2soCFHS4wV3/23Nebq9omY3KuK9DKw==\n"
         4: .line 228
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setPublicKey:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         5: .line 232
            ldc "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgeRyEfU1NSHPTCuC9\nrwLZMukaWCH2Fk6q5w+XBYrKtLihRANCAAStpUnwKmSvBM9EI+W5QN3ALpvz6bh0\nSPCXyz5KfQZQuSj4f3l+xNERDUDaygIUdLjBXf/bc15ur2iZjcq4r0Mr"
         6: .line 231
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setSecretKey:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         7: .line 226
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         8: .line 225
            invokestatic io.vertx.ext.auth.jwt.JWTAuth.create:(Lio/vertx/core/Vertx;Lio/vertx/ext/auth/jwt/JWTAuthOptions;)Lio/vertx/ext/auth/jwt/JWTAuth;
            astore 2 /* provider */
        start local 2 // io.vertx.ext.auth.jwt.JWTAuth provider
         9: .line 237
            aload 2 /* provider */
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            new io.vertx.ext.jwt.JWTOptions
            dup
            invokespecial io.vertx.ext.jwt.JWTOptions.<init>:()V
            ldc "ES256"
            invokevirtual io.vertx.ext.jwt.JWTOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/jwt/JWTOptions;
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.generateToken:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/jwt/JWTOptions;)Ljava/lang/String;
            pop
        10: .line 238
            return
        end local 2 // io.vertx.ext.auth.jwt.JWTAuth provider
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lexamples/AuthJWTExamples;
            0   11     1     vertx  Lio/vertx/core/Vertx;
            9   11     2  provider  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
       Name  Flags
      vertx  

  private static void lambda$0(io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.AsyncResult res
         0: .line 76
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 2
         1: .line 77
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            checkcast io.vertx.ext.auth.User
            pop
         2: .line 81
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.AsyncResult res
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   res  Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/User;>;

  private static void lambda$1(io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.AsyncResult res
         0: .line 94
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 2
         1: .line 95
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            checkcast io.vertx.ext.auth.User
            pop
         2: .line 99
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.AsyncResult res
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   res  Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/User;>;

  private static void lambda$2(io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.AsyncResult res
         0: .line 112
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 2
         1: .line 113
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            checkcast io.vertx.ext.auth.User
            pop
         2: .line 117
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.AsyncResult res
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   res  Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/User;>;

  private static void lambda$3(io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.AsyncResult res
         0: .line 130
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 2
         1: .line 131
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            checkcast io.vertx.ext.auth.User
            pop
         2: .line 135
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.AsyncResult res
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   res  Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/User;>;

  private static void lambda$4(io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.AsyncResult res
         0: .line 140
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 1
            aload 0 /* res */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            pop
         1: .line 143
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.AsyncResult res
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   res  Lio/vertx/core/AsyncResult<Ljava/lang/Boolean;>;
}
SourceFile: "AuthJWTExamples.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles