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 36
            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 40
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 41
            new io.vertx.ext.auth.KeyStoreOptions
            dup
            invokespecial io.vertx.ext.auth.KeyStoreOptions.<init>:()V
         2: .line 42
            ldc "keystore.jceks"
            invokevirtual io.vertx.ext.auth.KeyStoreOptions.setPath:(Ljava/lang/String;)Lio/vertx/ext/auth/KeyStoreOptions;
         3: .line 43
            ldc "secret"
            invokevirtual io.vertx.ext.auth.KeyStoreOptions.setPassword:(Ljava/lang/String;)Lio/vertx/ext/auth/KeyStoreOptions;
         4: .line 41
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.setKeyStore:(Lio/vertx/ext/auth/KeyStoreOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         5: .line 40
            astore 2 /* config */
        start local 2 // io.vertx.ext.auth.jwt.JWTAuthOptions config
         6: .line 45
            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 46
            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 50
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 51
            new io.vertx.ext.auth.KeyStoreOptions
            dup
            invokespecial io.vertx.ext.auth.KeyStoreOptions.<init>:()V
         2: .line 52
            ldc "keystore.jceks"
            invokevirtual io.vertx.ext.auth.KeyStoreOptions.setPath:(Ljava/lang/String;)Lio/vertx/ext/auth/KeyStoreOptions;
         3: .line 53
            ldc "secret"
            invokevirtual io.vertx.ext.auth.KeyStoreOptions.setPassword:(Ljava/lang/String;)Lio/vertx/ext/auth/KeyStoreOptions;
         4: .line 51
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.setKeyStore:(Lio/vertx/ext/auth/KeyStoreOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         5: .line 50
            astore 4 /* config */
        start local 4 // io.vertx.ext.auth.jwt.JWTAuthOptions config
         6: .line 55
            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 59
            ldc "paulo"
            aload 2 /* username */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
            ldc "super_secret"
            aload 3 /* password */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 11
         8: .line 60
            aload 5 /* provider */
         9: .line 61
            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/Object;)Lio/vertx/core/json/JsonObject;
            new io.vertx.ext.auth.JWTOptions
            dup
            invokespecial io.vertx.ext.auth.JWTOptions.<init>:()V
        10: .line 60
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.generateToken:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/auth/JWTOptions;)Ljava/lang/String;
            pop
        11: .line 67
      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   12     0      this  Lexamples/AuthJWTExamples;
            0   12     1     vertx  Lio/vertx/core/Vertx;
            0   12     2  username  Ljava/lang/String;
            0   12     3  password  Ljava/lang/String;
            6   12     4    config  Lio/vertx/ext/auth/jwt/JWTAuthOptions;
            7   12     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 71
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 72
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 73
            ldc "RS256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 74
            ldc "BASE64-ENCODED-PUBLIC_KEY"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setBuffer:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         4: .line 72
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         5: .line 71
            astore 2 /* config */
        start local 2 // io.vertx.ext.auth.jwt.JWTAuthOptions config
         6: .line 76
            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 77
            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 82
            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/Object;)Lio/vertx/core/json/JsonObject;
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.authenticate:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/Future;
         1: .line 83
            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/ext/auth/User;)V (6)
                  (Lio/vertx/ext/auth/User;)V
            invokeinterface io.vertx.core.Future.onSuccess:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
         2: .line 84
            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(Ljava/lang/Throwable;)V (6)
                  (Ljava/lang/Throwable;)V
            invokeinterface io.vertx.core.Future.onFailure:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 87
            return
        end local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lexamples/AuthJWTExamples;
            0    4     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 95
            aload 1 /* jwtAuth */
         1: .line 96
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         2: .line 97
            ldc "jwt"
            ldc "BASE64-ENCODED-STRING"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         3: .line 98
            ldc "options"
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         4: .line 99
            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/Object;)Lio/vertx/core/json/JsonObject;
         5: .line 98
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         6: .line 95
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.authenticate:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/Future;
         7: .line 100
            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/ext/auth/User;)V (6)
                  (Lio/vertx/ext/auth/User;)V
            invokeinterface io.vertx.core.Future.onSuccess:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
         8: .line 101
            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(Ljava/lang/Throwable;)V (6)
                  (Ljava/lang/Throwable;)V
            invokeinterface io.vertx.core.Future.onFailure:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         9: .line 104
            return
        end local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lexamples/AuthJWTExamples;
            0   10     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 112
            aload 1 /* jwtAuth */
         1: .line 113
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         2: .line 114
            ldc "jwt"
            ldc "BASE64-ENCODED-STRING"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         3: .line 115
            ldc "options"
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         4: .line 116
            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/Object;)Lio/vertx/core/json/JsonArray;
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         5: .line 115
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         6: .line 112
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.authenticate:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/Future;
         7: .line 117
            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/ext/auth/User;)V (6)
                  (Lio/vertx/ext/auth/User;)V
            invokeinterface io.vertx.core.Future.onSuccess:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
         8: .line 118
            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$5(Ljava/lang/Throwable;)V (6)
                  (Ljava/lang/Throwable;)V
            invokeinterface io.vertx.core.Future.onFailure:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         9: .line 121
            return
        end local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lexamples/AuthJWTExamples;
            0   10     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 129
            aload 1 /* jwtAuth */
         1: .line 130
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         2: .line 131
            ldc "jwt"
            ldc "BASE64-ENCODED-STRING"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         3: .line 132
            ldc "options"
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         4: .line 133
            ldc "issuer"
            ldc "mycorp.com"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         5: .line 132
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         6: .line 129
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.authenticate:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/Future;
         7: .line 134
            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$6(Lio/vertx/ext/auth/User;)V (6)
                  (Lio/vertx/ext/auth/User;)V
            invokeinterface io.vertx.core.Future.onSuccess:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
         8: .line 135
            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$7(Ljava/lang/Throwable;)V (6)
                  (Ljava/lang/Throwable;)V
            invokeinterface io.vertx.core.Future.onFailure:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         9: .line 138
            return
        end local 1 // io.vertx.ext.auth.jwt.JWTAuth jwtAuth
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lexamples/AuthJWTExamples;
            0   10     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=2, locals=3, args_size=2
        start local 0 // examples.AuthJWTExamples this
        start local 1 // io.vertx.ext.auth.User user
         0: .line 141
            invokestatic io.vertx.ext.auth.jwt.authorization.MicroProfileAuthorization.create:()Lio/vertx/ext/auth/jwt/authorization/MicroProfileAuthorization;
            astore 2 /* authz */
        start local 2 // io.vertx.ext.auth.authorization.AuthorizationProvider authz
         1: .line 143
            aload 2 /* authz */
            aload 1 /* user */
            invokeinterface io.vertx.ext.auth.authorization.AuthorizationProvider.getAuthorizations:(Lio/vertx/ext/auth/User;)Lio/vertx/core/Future;
         2: .line 144
            aload 1 /* user */
            invokedynamic handle(Lio/vertx/ext/auth/User;)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$8(Lio/vertx/ext/auth/User;Ljava/lang/Void;)V (6)
                  (Ljava/lang/Void;)V
            invokeinterface io.vertx.core.Future.onSuccess:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 150
            return
        end local 2 // io.vertx.ext.auth.authorization.AuthorizationProvider authz
        end local 1 // io.vertx.ext.auth.User user
        end local 0 // examples.AuthJWTExamples this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lexamples/AuthJWTExamples;
            0    4     1   user  Lio/vertx/ext/auth/User;
            1    4     2  authz  Lio/vertx/ext/auth/authorization/AuthorizationProvider;
    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 154
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         1: .line 155
            ldc "public-key"
            ldc "BASE64-ENCODED-PUBLIC_KEY"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         2: .line 158
            ldc "permissionsClaimKey"
            ldc "realm_access/roles"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
         3: .line 154
            astore 2 /* config */
        start local 2 // io.vertx.core.json.JsonObject config
         4: .line 161
            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 162
            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 165
            aload 1 /* vertx */
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 166
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 167
            ldc "RS256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 169
            ldc "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxPSbCQY5mBKFDIn1kggv\nWb4ChjrctqD4nFnJOJk4mpuZ/u3h2ZgeKJJkJv8+5oFO6vsEwF7/TqKXp0XDp6IH\nbyaOSWdkl535rCYR5AxDSjwnuSXsSp54pvB+fEEFDPFF81GHixepIbqXCB+BnCTg\nN65BqwNn/1Vgqv6+H3nweNlbTv8e/scEgbg6ZYcsnBBB9kYLp69FSwNWpvPmd60e\n3DWyIo3WCUmKlQgjHL4PHLKYwwKgOHG/aNl4hN4/wqTixCAHe6KdLnehLn71x+Z0\nSyXbWooftefpJP1wMbwlCpH3ikBzVIfHKLWT9QIOVoRgchPU3WAsZv/ePgl5i8Co\nqwIDAQAB\n-----END PUBLIC KEY-----"
         4: .line 168
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setBuffer:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         5: .line 166
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         6: .line 178
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         7: .line 179
            ldc "RS256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         8: .line 181
            ldc "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDE9JsJBjmYEoUM\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=\n-----END PRIVATE KEY-----"
         9: .line 180
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setBuffer:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
        10: .line 178
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
        11: .line 165
            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
        12: .line 211
            aload 2 /* provider */
        13: .line 212
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            ldc "some"
            ldc "token-data"
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
        14: .line 213
            new io.vertx.ext.auth.JWTOptions
            dup
            invokespecial io.vertx.ext.auth.JWTOptions.<init>:()V
            ldc "RS256"
            invokevirtual io.vertx.ext.auth.JWTOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/JWTOptions;
        15: .line 211
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.generateToken:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/auth/JWTOptions;)Ljava/lang/String;
            pop
        16: .line 214
            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   17     0      this  Lexamples/AuthJWTExamples;
            0   17     1     vertx  Lio/vertx/core/Vertx;
           12   17     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 217
            aload 1 /* vertx */
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 218
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 219
            ldc "HS256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 220
            ldc "keyboard cat"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setBuffer:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         4: .line 218
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         5: .line 217
            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
         6: .line 222
            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
         7: .line 223
            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    8     0      this  Lexamples/AuthJWTExamples;
            0    8     1     vertx  Lio/vertx/core/Vertx;
            6    8     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 226
            aload 1 /* vertx */
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 227
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 228
            ldc "ES256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 230
            ldc "-----BEGIN PRIVATE KEY-----\nMIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgeRyEfU1NSHPTCuC9\nrwLZMukaWCH2Fk6q5w+XBYrKtLihRANCAAStpUnwKmSvBM9EI+W5QN3ALpvz6bh0\nSPCXyz5KfQZQuSj4f3l+xNERDUDaygIUdLjBXf/bc15ur2iZjcq4r0Mr\n-----END PRIVATE KEY-----\n"
         4: .line 229
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setBuffer:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         5: .line 227
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         6: .line 226
            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 237
            aload 2 /* provider */
         8: .line 238
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
         9: .line 239
            new io.vertx.ext.auth.JWTOptions
            dup
            invokespecial io.vertx.ext.auth.JWTOptions.<init>:()V
            ldc "ES256"
            invokevirtual io.vertx.ext.auth.JWTOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/JWTOptions;
        10: .line 237
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.generateToken:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/auth/JWTOptions;)Ljava/lang/String;
            pop
        11: .line 240
            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   12     0      this  Lexamples/AuthJWTExamples;
            0   12     1     vertx  Lio/vertx/core/Vertx;
            7   12     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 243
            aload 1 /* vertx */
            new io.vertx.ext.auth.jwt.JWTAuthOptions
            dup
            invokespecial io.vertx.ext.auth.jwt.JWTAuthOptions.<init>:()V
         1: .line 244
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         2: .line 245
            ldc "ES256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         3: .line 247
            ldc "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEraVJ8CpkrwTPRCPluUDdwC6b8+m4\ndEjwl8s+Sn0GULko+H95fsTREQ1A2soCFHS4wV3/23Nebq9omY3KuK9DKw==\n-----END PUBLIC KEY-----"
         4: .line 246
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setBuffer:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         5: .line 244
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
         6: .line 251
            new io.vertx.ext.auth.PubSecKeyOptions
            dup
            invokespecial io.vertx.ext.auth.PubSecKeyOptions.<init>:()V
         7: .line 252
            ldc "RS256"
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
         8: .line 254
            ldc "-----BEGIN PRIVATE KEY-----\nMIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgeRyEfU1NSHPTCuC9\nrwLZMukaWCH2Fk6q5w+XBYrKtLihRANCAAStpUnwKmSvBM9EI+W5QN3ALpvz6bh0\nSPCXyz5KfQZQuSj4f3l+xNERDUDaygIUdLjBXf/bc15ur2iZjcq4r0Mr"
         9: .line 253
            invokevirtual io.vertx.ext.auth.PubSecKeyOptions.setBuffer:(Ljava/lang/String;)Lio/vertx/ext/auth/PubSecKeyOptions;
        10: .line 251
            invokevirtual io.vertx.ext.auth.jwt.JWTAuthOptions.addPubSecKey:(Lio/vertx/ext/auth/PubSecKeyOptions;)Lio/vertx/ext/auth/jwt/JWTAuthOptions;
        11: .line 243
            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
        12: .line 260
            aload 2 /* provider */
        13: .line 261
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
        14: .line 262
            new io.vertx.ext.auth.JWTOptions
            dup
            invokespecial io.vertx.ext.auth.JWTOptions.<init>:()V
            ldc "ES256"
            invokevirtual io.vertx.ext.auth.JWTOptions.setAlgorithm:(Ljava/lang/String;)Lio/vertx/ext/auth/JWTOptions;
        15: .line 260
            invokeinterface io.vertx.ext.auth.jwt.JWTAuth.generateToken:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/auth/JWTOptions;)Ljava/lang/String;
            pop
        16: .line 263
            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   17     0      this  Lexamples/AuthJWTExamples;
            0   17     1     vertx  Lio/vertx/core/Vertx;
           12   17     2  provider  Lio/vertx/ext/auth/jwt/JWTAuth;
    MethodParameters:
       Name  Flags
      vertx  

  private static void lambda$0(io.vertx.ext.auth.User);
    descriptor: (Lio/vertx/ext/auth/User;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // io.vertx.ext.auth.User user
         0: .line 83
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "User: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* user */
            invokeinterface io.vertx.ext.auth.User.principal:()Lio/vertx/core/json/JsonObject;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
            return
        end local 0 // io.vertx.ext.auth.User user
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  user  Lio/vertx/ext/auth/User;

  private static void lambda$1(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // java.lang.Throwable err
         0: .line 86
            return
        end local 0 // java.lang.Throwable err
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   err  Ljava/lang/Throwable;

  private static void lambda$2(io.vertx.ext.auth.User);
    descriptor: (Lio/vertx/ext/auth/User;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // io.vertx.ext.auth.User user
         0: .line 100
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "User: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* user */
            invokeinterface io.vertx.ext.auth.User.principal:()Lio/vertx/core/json/JsonObject;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
            return
        end local 0 // io.vertx.ext.auth.User user
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  user  Lio/vertx/ext/auth/User;

  private static void lambda$3(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // java.lang.Throwable err
         0: .line 103
            return
        end local 0 // java.lang.Throwable err
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   err  Ljava/lang/Throwable;

  private static void lambda$4(io.vertx.ext.auth.User);
    descriptor: (Lio/vertx/ext/auth/User;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // io.vertx.ext.auth.User user
         0: .line 117
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "User: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* user */
            invokeinterface io.vertx.ext.auth.User.principal:()Lio/vertx/core/json/JsonObject;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
            return
        end local 0 // io.vertx.ext.auth.User user
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  user  Lio/vertx/ext/auth/User;

  private static void lambda$5(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // java.lang.Throwable err
         0: .line 120
            return
        end local 0 // java.lang.Throwable err
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   err  Ljava/lang/Throwable;

  private static void lambda$6(io.vertx.ext.auth.User);
    descriptor: (Lio/vertx/ext/auth/User;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // io.vertx.ext.auth.User user
         0: .line 134
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "User: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* user */
            invokeinterface io.vertx.ext.auth.User.principal:()Lio/vertx/core/json/JsonObject;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
            return
        end local 0 // io.vertx.ext.auth.User user
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  user  Lio/vertx/ext/auth/User;

  private static void lambda$7(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // java.lang.Throwable err
         0: .line 137
            return
        end local 0 // java.lang.Throwable err
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   err  Ljava/lang/Throwable;

  private static void lambda$8(io.vertx.ext.auth.User, java.lang.Void);
    descriptor: (Lio/vertx/ext/auth/User;Ljava/lang/Void;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.Void v
         0: .line 146
            ldc "create-report"
            invokestatic io.vertx.ext.auth.authorization.PermissionBasedAuthorization.create:(Ljava/lang/String;)Lio/vertx/ext/auth/authorization/PermissionBasedAuthorization;
            aload 0
            invokeinterface io.vertx.ext.auth.authorization.PermissionBasedAuthorization.match:(Lio/vertx/ext/auth/User;)Z
            pop
         1: .line 149
            return
        end local 1 // java.lang.Void v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     1     v  Ljava/lang/Void;
}
SourceFile: "AuthJWTExamples.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles