public class io.vertx.core.impl.VertxImpl implements io.vertx.core.impl.VertxInternal, io.vertx.core.spi.metrics.MetricsProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.core.impl.VertxImpl
  super_class: java.lang.Object
{
  private static final io.vertx.core.logging.Logger log;
    descriptor: Lio/vertx/core/logging/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String CLUSTER_MAP_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "__vertx.haInfo"

  private static final java.lang.String NETTY_IO_RATIO_PROPERTY_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "vertx.nettyIORatio"

  private static final int NETTY_IO_RATIO;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final io.vertx.core.file.FileSystem fileSystem;
    descriptor: Lio/vertx/core/file/FileSystem;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.shareddata.SharedData sharedData;
    descriptor: Lio/vertx/core/shareddata/SharedData;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.spi.metrics.VertxMetrics metrics;
    descriptor: Lio/vertx/core/spi/metrics/VertxMetrics;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.ConcurrentMap<java.lang.Long, io.vertx.core.impl.VertxImpl$InternalTimerHandler> timeouts;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/Long;Lio/vertx/core/impl/VertxImpl$InternalTimerHandler;>;

  private final java.util.concurrent.atomic.AtomicLong timeoutCounter;
    descriptor: Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.spi.cluster.ClusterManager clusterManager;
    descriptor: Lio/vertx/core/spi/cluster/ClusterManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.impl.DeploymentManager deploymentManager;
    descriptor: Lio/vertx/core/impl/DeploymentManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.file.impl.FileResolver fileResolver;
    descriptor: Lio/vertx/core/file/impl/FileResolver;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<io.vertx.core.net.impl.ServerID, io.vertx.core.http.impl.HttpServerImpl> sharedHttpServers;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lio/vertx/core/net/impl/ServerID;Lio/vertx/core/http/impl/HttpServerImpl;>;

  private final java.util.Map<io.vertx.core.net.impl.ServerID, io.vertx.core.net.impl.NetServerImpl> sharedNetServers;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lio/vertx/core/net/impl/ServerID;Lio/vertx/core/net/impl/NetServerImpl;>;

  final io.vertx.core.impl.WorkerPool workerPool;
    descriptor: Lio/vertx/core/impl/WorkerPool;
    flags: (0x0010) ACC_FINAL

  final io.vertx.core.impl.WorkerPool internalBlockingPool;
    descriptor: Lio/vertx/core/impl/WorkerPool;
    flags: (0x0010) ACC_FINAL

  private final java.util.concurrent.ThreadFactory eventLoopThreadFactory;
    descriptor: Ljava/util/concurrent/ThreadFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.netty.channel.EventLoopGroup eventLoopGroup;
    descriptor: Lio/netty/channel/EventLoopGroup;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.netty.channel.EventLoopGroup acceptorEventLoopGroup;
    descriptor: Lio/netty/channel/EventLoopGroup;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.impl.BlockedThreadChecker checker;
    descriptor: Lio/vertx/core/impl/BlockedThreadChecker;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.impl.AddressResolver addressResolver;
    descriptor: Lio/vertx/core/impl/AddressResolver;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.dns.AddressResolverOptions addressResolverOptions;
    descriptor: Lio/vertx/core/dns/AddressResolverOptions;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.eventbus.EventBus eventBus;
    descriptor: Lio/vertx/core/eventbus/EventBus;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private volatile io.vertx.core.impl.HAManager haManager;
    descriptor: Lio/vertx/core/impl/HAManager;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private boolean closed;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private volatile io.vertx.core.Handler<java.lang.Throwable> exceptionHandler;
    descriptor: Lio/vertx/core/Handler;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Lio/vertx/core/Handler<Ljava/lang/Throwable;>;

  private final java.util.Map<java.lang.String, io.vertx.core.impl.VertxImpl$SharedWorkerPool> namedWorkerPools;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lio/vertx/core/impl/VertxImpl$SharedWorkerPool;>;

  private final int defaultWorkerPoolSize;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long maxWorkerExecTime;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.TimeUnit maxWorkerExecTimeUnit;
    descriptor: Ljava/util/concurrent/TimeUnit;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final long maxEventLoopExTime;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.TimeUnit maxEventLoopExecTimeUnit;
    descriptor: Ljava/util/concurrent/TimeUnit;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.impl.CloseHooks closeHooks;
    descriptor: Lio/vertx/core/impl/CloseHooks;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.net.impl.transport.Transport transport;
    descriptor: Lio/vertx/core/net/impl/transport/Transport;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 78
            ldc Lio/vertx/core/impl/VertxImpl;
            invokestatic io.vertx.core.logging.LoggerFactory.getLogger:(Ljava/lang/Class;)Lio/vertx/core/logging/Logger;
            putstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
         1: .line 82
            ldc "vertx.nettyIORatio"
            bipush 50
            invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
            putstatic io.vertx.core.impl.VertxImpl.NETTY_IO_RATIO:I
         2: .line 86
            getstatic io.netty.util.ResourceLeakDetector$Level.DISABLED:Lio/netty/util/ResourceLeakDetector$Level;
            invokestatic io.netty.util.ResourceLeakDetector.setLevel:(Lio/netty/util/ResourceLeakDetector$Level;)V
         3: .line 88
            ldc "io.netty.noJdkZlibDecoder"
            ldc "false"
            invokestatic java.lang.System.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            pop
         4: .line 89
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static io.vertx.core.impl.VertxImpl vertx(io.vertx.core.VertxOptions, io.vertx.core.net.impl.transport.Transport);
    descriptor: (Lio/vertx/core/VertxOptions;Lio/vertx/core/net/impl/transport/Transport;)Lio/vertx/core/impl/VertxImpl;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // io.vertx.core.VertxOptions options
        start local 1 // io.vertx.core.net.impl.transport.Transport transport
         0: .line 92
            new io.vertx.core.impl.VertxImpl
            dup
            aload 0 /* options */
            aload 1 /* transport */
            invokespecial io.vertx.core.impl.VertxImpl.<init>:(Lio/vertx/core/VertxOptions;Lio/vertx/core/net/impl/transport/Transport;)V
            astore 2 /* vertx */
        start local 2 // io.vertx.core.impl.VertxImpl vertx
         1: .line 93
            aload 2 /* vertx */
            invokevirtual io.vertx.core.impl.VertxImpl.init:()V
         2: .line 94
            aload 2 /* vertx */
            areturn
        end local 2 // io.vertx.core.impl.VertxImpl vertx
        end local 1 // io.vertx.core.net.impl.transport.Transport transport
        end local 0 // io.vertx.core.VertxOptions options
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0    options  Lio/vertx/core/VertxOptions;
            0    3     1  transport  Lio/vertx/core/net/impl/transport/Transport;
            1    3     2      vertx  Lio/vertx/core/impl/VertxImpl;
    MethodParameters:
           Name  Flags
      options    
      transport  

  static void clusteredVertx(io.vertx.core.VertxOptions, io.vertx.core.net.impl.transport.Transport, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.Vertx>>);
    descriptor: (Lio/vertx/core/VertxOptions;Lio/vertx/core/net/impl/transport/Transport;Lio/vertx/core/Handler;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // io.vertx.core.VertxOptions options
        start local 1 // io.vertx.core.net.impl.transport.Transport transport
        start local 2 // io.vertx.core.Handler resultHandler
         0: .line 98
            new io.vertx.core.impl.VertxImpl
            dup
            aload 0 /* options */
            aload 1 /* transport */
            invokespecial io.vertx.core.impl.VertxImpl.<init>:(Lio/vertx/core/VertxOptions;Lio/vertx/core/net/impl/transport/Transport;)V
            astore 3 /* vertx */
        start local 3 // io.vertx.core.impl.VertxImpl vertx
         1: .line 99
            aload 3 /* vertx */
            aload 0 /* options */
            aload 2 /* resultHandler */
            invokevirtual io.vertx.core.impl.VertxImpl.joinCluster:(Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;)V
         2: .line 100
            return
        end local 3 // io.vertx.core.impl.VertxImpl vertx
        end local 2 // io.vertx.core.Handler resultHandler
        end local 1 // io.vertx.core.net.impl.transport.Transport transport
        end local 0 // io.vertx.core.VertxOptions options
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0        options  Lio/vertx/core/VertxOptions;
            0    3     1      transport  Lio/vertx/core/net/impl/transport/Transport;
            0    3     2  resultHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;
            1    3     3          vertx  Lio/vertx/core/impl/VertxImpl;
    Signature: (Lio/vertx/core/VertxOptions;Lio/vertx/core/net/impl/transport/Transport;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;)V
    MethodParameters:
               Name  Flags
      options        
      transport      
      resultHandler  

  private void <init>(io.vertx.core.VertxOptions, io.vertx.core.net.impl.transport.Transport);
    descriptor: (Lio/vertx/core/VertxOptions;Lio/vertx/core/net/impl/transport/Transport;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=8, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.VertxOptions options
        start local 2 // io.vertx.core.net.impl.transport.Transport transport
         0: .line 133
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 102
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.getFileSystem:()Lio/vertx/core/file/FileSystem;
            putfield io.vertx.core.impl.VertxImpl.fileSystem:Lio/vertx/core/file/FileSystem;
         2: .line 105
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield io.vertx.core.impl.VertxImpl.timeouts:Ljava/util/concurrent/ConcurrentMap;
         3: .line 106
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicLong
            dup
            lconst_0
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
            putfield io.vertx.core.impl.VertxImpl.timeoutCounter:Ljava/util/concurrent/atomic/AtomicLong;
         4: .line 110
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield io.vertx.core.impl.VertxImpl.sharedHttpServers:Ljava/util/Map;
         5: .line 111
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield io.vertx.core.impl.VertxImpl.sharedNetServers:Ljava/util/Map;
         6: .line 135
            invokestatic io.vertx.core.Vertx.currentContext:()Lio/vertx/core/Context;
            ifnull 8
         7: .line 136
            getstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
            ldc "You're already on a Vert.x context, are you sure you want to create a new Vertx instance?"
            invokevirtual io.vertx.core.logging.Logger.warn:(Ljava/lang/Object;)V
         8: .line 138
      StackMap locals: io.vertx.core.impl.VertxImpl io.vertx.core.VertxOptions io.vertx.core.net.impl.transport.Transport
      StackMap stack:
            aload 0 /* this */
            new io.vertx.core.impl.CloseHooks
            dup
            getstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
            invokespecial io.vertx.core.impl.CloseHooks.<init>:(Lio/vertx/core/logging/Logger;)V
            putfield io.vertx.core.impl.VertxImpl.closeHooks:Lio/vertx/core/impl/CloseHooks;
         9: .line 139
            aload 0 /* this */
            new io.vertx.core.impl.BlockedThreadChecker
            dup
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getBlockedThreadCheckInterval:()J
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getBlockedThreadCheckIntervalUnit:()Ljava/util/concurrent/TimeUnit;
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getWarningExceptionTime:()J
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getWarningExceptionTimeUnit:()Ljava/util/concurrent/TimeUnit;
            invokespecial io.vertx.core.impl.BlockedThreadChecker.<init>:(JLjava/util/concurrent/TimeUnit;JLjava/util/concurrent/TimeUnit;)V
            putfield io.vertx.core.impl.VertxImpl.checker:Lio/vertx/core/impl/BlockedThreadChecker;
        10: .line 140
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxEventLoopExecuteTime:()J
            putfield io.vertx.core.impl.VertxImpl.maxEventLoopExTime:J
        11: .line 141
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxEventLoopExecuteTimeUnit:()Ljava/util/concurrent/TimeUnit;
            putfield io.vertx.core.impl.VertxImpl.maxEventLoopExecTimeUnit:Ljava/util/concurrent/TimeUnit;
        12: .line 142
            aload 0 /* this */
            new io.vertx.core.impl.VertxThreadFactory
            dup
            ldc "vert.x-eventloop-thread-"
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.checker:Lio/vertx/core/impl/BlockedThreadChecker;
            iconst_0
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.maxEventLoopExTime:J
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.maxEventLoopExecTimeUnit:Ljava/util/concurrent/TimeUnit;
            invokespecial io.vertx.core.impl.VertxThreadFactory.<init>:(Ljava/lang/String;Lio/vertx/core/impl/BlockedThreadChecker;ZJLjava/util/concurrent/TimeUnit;)V
            putfield io.vertx.core.impl.VertxImpl.eventLoopThreadFactory:Ljava/util/concurrent/ThreadFactory;
        13: .line 143
            aload 0 /* this */
            aload 2 /* transport */
            iconst_1
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getEventLoopPoolSize:()I
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.eventLoopThreadFactory:Ljava/util/concurrent/ThreadFactory;
            getstatic io.vertx.core.impl.VertxImpl.NETTY_IO_RATIO:I
            invokevirtual io.vertx.core.net.impl.transport.Transport.eventLoopGroup:(IILjava/util/concurrent/ThreadFactory;I)Lio/netty/channel/EventLoopGroup;
            putfield io.vertx.core.impl.VertxImpl.eventLoopGroup:Lio/netty/channel/EventLoopGroup;
        14: .line 144
            new io.vertx.core.impl.VertxThreadFactory
            dup
            ldc "vert.x-acceptor-thread-"
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.checker:Lio/vertx/core/impl/BlockedThreadChecker;
            iconst_0
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxEventLoopExecuteTime:()J
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxEventLoopExecuteTimeUnit:()Ljava/util/concurrent/TimeUnit;
            invokespecial io.vertx.core.impl.VertxThreadFactory.<init>:(Ljava/lang/String;Lio/vertx/core/impl/BlockedThreadChecker;ZJLjava/util/concurrent/TimeUnit;)V
            astore 3 /* acceptorEventLoopThreadFactory */
        start local 3 // java.util.concurrent.ThreadFactory acceptorEventLoopThreadFactory
        15: .line 147
            aload 0 /* this */
            aload 2 /* transport */
            iconst_0
            iconst_1
            aload 3 /* acceptorEventLoopThreadFactory */
            bipush 100
            invokevirtual io.vertx.core.net.impl.transport.Transport.eventLoopGroup:(IILjava/util/concurrent/ThreadFactory;I)Lio/netty/channel/EventLoopGroup;
            putfield io.vertx.core.impl.VertxImpl.acceptorEventLoopGroup:Lio/netty/channel/EventLoopGroup;
        16: .line 149
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.core.impl.VertxImpl.initialiseMetrics:(Lio/vertx/core/VertxOptions;)Lio/vertx/core/spi/metrics/VertxMetrics;
            putfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
        17: .line 151
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getWorkerPoolSize:()I
        18: .line 152
            new io.vertx.core.impl.VertxThreadFactory
            dup
            ldc "vert.x-worker-thread-"
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.checker:Lio/vertx/core/impl/BlockedThreadChecker;
            iconst_1
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxWorkerExecuteTime:()J
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxWorkerExecuteTimeUnit:()Ljava/util/concurrent/TimeUnit;
            invokespecial io.vertx.core.impl.VertxThreadFactory.<init>:(Ljava/lang/String;Lio/vertx/core/impl/BlockedThreadChecker;ZJLjava/util/concurrent/TimeUnit;)V
        19: .line 151
            invokestatic java.util.concurrent.Executors.newFixedThreadPool:(ILjava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService;
            astore 4 /* workerExec */
        start local 4 // java.util.concurrent.ExecutorService workerExec
        20: .line 153
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            ifnull 21
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            ldc "worker"
            ldc "vert.x-worker-thread"
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getWorkerPoolSize:()I
            invokeinterface io.vertx.core.spi.metrics.VertxMetrics.createPoolMetrics:(Ljava/lang/String;Ljava/lang/String;I)Lio/vertx/core/spi/metrics/PoolMetrics;
            goto 22
      StackMap locals: java.util.concurrent.ThreadFactory java.util.concurrent.ExecutorService
      StackMap stack:
        21: aconst_null
      StackMap locals:
      StackMap stack: io.vertx.core.spi.metrics.PoolMetrics
        22: astore 5 /* workerPoolMetrics */
        start local 5 // io.vertx.core.spi.metrics.PoolMetrics workerPoolMetrics
        23: .line 154
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getInternalBlockingPoolSize:()I
        24: .line 155
            new io.vertx.core.impl.VertxThreadFactory
            dup
            ldc "vert.x-internal-blocking-"
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.checker:Lio/vertx/core/impl/BlockedThreadChecker;
            iconst_1
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxWorkerExecuteTime:()J
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxWorkerExecuteTimeUnit:()Ljava/util/concurrent/TimeUnit;
            invokespecial io.vertx.core.impl.VertxThreadFactory.<init>:(Ljava/lang/String;Lio/vertx/core/impl/BlockedThreadChecker;ZJLjava/util/concurrent/TimeUnit;)V
        25: .line 154
            invokestatic java.util.concurrent.Executors.newFixedThreadPool:(ILjava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService;
            astore 6 /* internalBlockingExec */
        start local 6 // java.util.concurrent.ExecutorService internalBlockingExec
        26: .line 156
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            ifnull 27
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            ldc "worker"
            ldc "vert.x-internal-blocking"
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getInternalBlockingPoolSize:()I
            invokeinterface io.vertx.core.spi.metrics.VertxMetrics.createPoolMetrics:(Ljava/lang/String;Ljava/lang/String;I)Lio/vertx/core/spi/metrics/PoolMetrics;
            goto 28
      StackMap locals: io.vertx.core.spi.metrics.PoolMetrics java.util.concurrent.ExecutorService
      StackMap stack:
        27: aconst_null
      StackMap locals:
      StackMap stack: io.vertx.core.spi.metrics.PoolMetrics
        28: astore 7 /* internalBlockingPoolMetrics */
        start local 7 // io.vertx.core.spi.metrics.PoolMetrics internalBlockingPoolMetrics
        29: .line 157
            aload 0 /* this */
            new io.vertx.core.impl.WorkerPool
            dup
            aload 6 /* internalBlockingExec */
            aload 7 /* internalBlockingPoolMetrics */
            invokespecial io.vertx.core.impl.WorkerPool.<init>:(Ljava/util/concurrent/ExecutorService;Lio/vertx/core/spi/metrics/PoolMetrics;)V
            putfield io.vertx.core.impl.VertxImpl.internalBlockingPool:Lio/vertx/core/impl/WorkerPool;
        30: .line 158
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield io.vertx.core.impl.VertxImpl.namedWorkerPools:Ljava/util/Map;
        31: .line 159
            aload 0 /* this */
            new io.vertx.core.impl.WorkerPool
            dup
            aload 4 /* workerExec */
            aload 5 /* workerPoolMetrics */
            invokespecial io.vertx.core.impl.WorkerPool.<init>:(Ljava/util/concurrent/ExecutorService;Lio/vertx/core/spi/metrics/PoolMetrics;)V
            putfield io.vertx.core.impl.VertxImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
        32: .line 160
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getWorkerPoolSize:()I
            putfield io.vertx.core.impl.VertxImpl.defaultWorkerPoolSize:I
        33: .line 161
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxWorkerExecuteTime:()J
            putfield io.vertx.core.impl.VertxImpl.maxWorkerExecTime:J
        34: .line 162
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMaxWorkerExecuteTimeUnit:()Ljava/util/concurrent/TimeUnit;
            putfield io.vertx.core.impl.VertxImpl.maxWorkerExecTimeUnit:Ljava/util/concurrent/TimeUnit;
        35: .line 164
            aload 0 /* this */
            aload 2 /* transport */
            putfield io.vertx.core.impl.VertxImpl.transport:Lio/vertx/core/net/impl/transport/Transport;
        36: .line 165
            aload 0 /* this */
            new io.vertx.core.file.impl.FileResolver
            dup
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getFileSystemOptions:()Lio/vertx/core/file/FileSystemOptions;
            invokespecial io.vertx.core.file.impl.FileResolver.<init>:(Lio/vertx/core/file/FileSystemOptions;)V
            putfield io.vertx.core.impl.VertxImpl.fileResolver:Lio/vertx/core/file/impl/FileResolver;
        37: .line 166
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getAddressResolverOptions:()Lio/vertx/core/dns/AddressResolverOptions;
            putfield io.vertx.core.impl.VertxImpl.addressResolverOptions:Lio/vertx/core/dns/AddressResolverOptions;
        38: .line 167
            aload 0 /* this */
            new io.vertx.core.impl.AddressResolver
            dup
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getAddressResolverOptions:()Lio/vertx/core/dns/AddressResolverOptions;
            invokespecial io.vertx.core.impl.AddressResolver.<init>:(Lio/vertx/core/Vertx;Lio/vertx/core/dns/AddressResolverOptions;)V
            putfield io.vertx.core.impl.VertxImpl.addressResolver:Lio/vertx/core/impl/AddressResolver;
        39: .line 168
            aload 0 /* this */
            new io.vertx.core.impl.DeploymentManager
            dup
            aload 0 /* this */
            invokespecial io.vertx.core.impl.DeploymentManager.<init>:(Lio/vertx/core/impl/VertxInternal;)V
            putfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
        40: .line 169
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getEventBusOptions:()Lio/vertx/core/eventbus/EventBusOptions;
            invokevirtual io.vertx.core.eventbus.EventBusOptions.isClustered:()Z
            ifeq 44
        41: .line 170
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.core.impl.VertxImpl.getClusterManager:(Lio/vertx/core/VertxOptions;)Lio/vertx/core/spi/cluster/ClusterManager;
            putfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
        42: .line 171
            aload 0 /* this */
            new io.vertx.core.eventbus.impl.clustered.ClusteredEventBus
            dup
            aload 0 /* this */
            aload 1 /* options */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            invokespecial io.vertx.core.eventbus.impl.clustered.ClusteredEventBus.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/VertxOptions;Lio/vertx/core/spi/cluster/ClusterManager;)V
            putfield io.vertx.core.impl.VertxImpl.eventBus:Lio/vertx/core/eventbus/EventBus;
        43: .line 172
            goto 46
        44: .line 173
      StackMap locals: io.vertx.core.spi.metrics.PoolMetrics
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
        45: .line 174
            aload 0 /* this */
            new io.vertx.core.eventbus.impl.EventBusImpl
            dup
            aload 0 /* this */
            invokespecial io.vertx.core.eventbus.impl.EventBusImpl.<init>:(Lio/vertx/core/impl/VertxInternal;)V
            putfield io.vertx.core.impl.VertxImpl.eventBus:Lio/vertx/core/eventbus/EventBus;
        46: .line 176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new io.vertx.core.shareddata.impl.SharedDataImpl
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            invokespecial io.vertx.core.shareddata.impl.SharedDataImpl.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/spi/cluster/ClusterManager;)V
            putfield io.vertx.core.impl.VertxImpl.sharedData:Lio/vertx/core/shareddata/SharedData;
        47: .line 177
            return
        end local 7 // io.vertx.core.spi.metrics.PoolMetrics internalBlockingPoolMetrics
        end local 6 // java.util.concurrent.ExecutorService internalBlockingExec
        end local 5 // io.vertx.core.spi.metrics.PoolMetrics workerPoolMetrics
        end local 4 // java.util.concurrent.ExecutorService workerExec
        end local 3 // java.util.concurrent.ThreadFactory acceptorEventLoopThreadFactory
        end local 2 // io.vertx.core.net.impl.transport.Transport transport
        end local 1 // io.vertx.core.VertxOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot                            Name  Signature
            0   48     0                            this  Lio/vertx/core/impl/VertxImpl;
            0   48     1                         options  Lio/vertx/core/VertxOptions;
            0   48     2                       transport  Lio/vertx/core/net/impl/transport/Transport;
           15   48     3  acceptorEventLoopThreadFactory  Ljava/util/concurrent/ThreadFactory;
           20   48     4                      workerExec  Ljava/util/concurrent/ExecutorService;
           23   48     5               workerPoolMetrics  Lio/vertx/core/spi/metrics/PoolMetrics;
           26   48     6            internalBlockingExec  Ljava/util/concurrent/ExecutorService;
           29   48     7     internalBlockingPoolMetrics  Lio/vertx/core/spi/metrics/PoolMetrics;
    MethodParameters:
           Name  Flags
      options    
      transport  

  private void init();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 180
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.eventBus:Lio/vertx/core/eventbus/EventBus;
            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
                  io/vertx/core/impl/VertxImpl.lambda$0(Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.core.eventbus.EventBus.start:(Lio/vertx/core/Handler;)V
         1: .line 181
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            ifnull 3
         2: .line 182
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            aload 0 /* this */
            invokeinterface io.vertx.core.spi.metrics.VertxMetrics.vertxCreated:(Lio/vertx/core/Vertx;)V
         3: .line 184
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/vertx/core/impl/VertxImpl;

  private void joinCluster(io.vertx.core.VertxOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.Vertx>>);
    descriptor: (Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.VertxOptions options
        start local 2 // io.vertx.core.Handler resultHandler
         0: .line 187
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            aload 0 /* this */
            invokeinterface io.vertx.core.spi.cluster.ClusterManager.setVertx:(Lio/vertx/core/Vertx;)V
         1: .line 188
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            aload 0 /* this */
            aload 1 /* options */
            aload 2 /* resultHandler */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$1(Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.core.spi.cluster.ClusterManager.join:(Lio/vertx/core/Handler;)V
         2: .line 196
            return
        end local 2 // io.vertx.core.Handler resultHandler
        end local 1 // io.vertx.core.VertxOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lio/vertx/core/impl/VertxImpl;
            0    3     1        options  Lio/vertx/core/VertxOptions;
            0    3     2  resultHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;
    Signature: (Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;)V
    MethodParameters:
               Name  Flags
      options        
      resultHandler  

  private void createHaManager(io.vertx.core.VertxOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.Vertx>>);
    descriptor: (Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.VertxOptions options
        start local 2 // io.vertx.core.Handler resultHandler
         0: .line 199
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;)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
                  io/vertx/core/impl/VertxImpl.lambda$2(Lio/vertx/core/Promise;)V (7)
                  (Lio/vertx/core/Promise;)V
         1: .line 201
            iconst_0
            aload 0 /* this */
            aload 1 /* options */
            aload 2 /* resultHandler */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$3(Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
         2: .line 199
            invokevirtual io.vertx.core.impl.VertxImpl.executeBlocking:(Lio/vertx/core/Handler;ZLio/vertx/core/Handler;)V
         3: .line 211
            return
        end local 2 // io.vertx.core.Handler resultHandler
        end local 1 // io.vertx.core.VertxOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lio/vertx/core/impl/VertxImpl;
            0    4     1        options  Lio/vertx/core/VertxOptions;
            0    4     2  resultHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;
    Signature: (Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;)V
    MethodParameters:
               Name  Flags
      options        
      resultHandler  

  private void startEventBus(io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.Vertx>>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler resultHandler
         0: .line 214
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.eventBus:Lio/vertx/core/eventbus/EventBus;
            aload 0 /* this */
            aload 1 /* resultHandler */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$4(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.core.eventbus.EventBus.start:(Lio/vertx/core/Handler;)V
         1: .line 222
            return
        end local 1 // io.vertx.core.Handler resultHandler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  resultHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;)V
    MethodParameters:
               Name  Flags
      resultHandler  

  private void initializeHaManager(io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.Vertx>>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler resultHandler
         0: .line 225
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;)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
                  io/vertx/core/impl/VertxImpl.lambda$5(Lio/vertx/core/Promise;)V (7)
                  (Lio/vertx/core/Promise;)V
         1: .line 231
            iconst_0
            aload 0 /* this */
            aload 1 /* resultHandler */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$6(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
         2: .line 225
            invokevirtual io.vertx.core.impl.VertxImpl.executeBlocking:(Lio/vertx/core/Handler;ZLio/vertx/core/Handler;)V
         3: .line 242
            return
        end local 1 // io.vertx.core.Handler resultHandler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lio/vertx/core/impl/VertxImpl;
            0    4     1  resultHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/Vertx;>;>;)V
    MethodParameters:
               Name  Flags
      resultHandler  

  protected io.vertx.core.file.FileSystem getFileSystem();
    descriptor: ()Lio/vertx/core/file/FileSystem;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 248
            invokestatic io.vertx.core.impl.Utils.isWindows:()Z
            ifeq 1
            new io.vertx.core.file.impl.WindowsFileSystem
            dup
            aload 0 /* this */
            invokespecial io.vertx.core.file.impl.WindowsFileSystem.<init>:(Lio/vertx/core/impl/VertxInternal;)V
            goto 2
      StackMap locals:
      StackMap stack:
         1: new io.vertx.core.file.impl.FileSystemImpl
            dup
            aload 0 /* this */
            invokespecial io.vertx.core.file.impl.FileSystemImpl.<init>:(Lio/vertx/core/impl/VertxInternal;)V
      StackMap locals:
      StackMap stack: io.vertx.core.file.impl.FileSystemImpl
         2: areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/vertx/core/impl/VertxImpl;

  public long maxEventLoopExecTime();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 253
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.maxEventLoopExTime:J
            lreturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public java.util.concurrent.TimeUnit maxEventLoopExecTimeUnit();
    descriptor: ()Ljava/util/concurrent/TimeUnit;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 258
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.maxEventLoopExecTimeUnit:Ljava/util/concurrent/TimeUnit;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.datagram.DatagramSocket createDatagramSocket(io.vertx.core.datagram.DatagramSocketOptions);
    descriptor: (Lio/vertx/core/datagram/DatagramSocketOptions;)Lio/vertx/core/datagram/DatagramSocket;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.datagram.DatagramSocketOptions options
         0: .line 263
            aload 0 /* this */
            aload 1 /* options */
            invokestatic io.vertx.core.datagram.impl.DatagramSocketImpl.create:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/datagram/DatagramSocketOptions;)Lio/vertx/core/datagram/impl/DatagramSocketImpl;
            areturn
        end local 1 // io.vertx.core.datagram.DatagramSocketOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  options  Lio/vertx/core/datagram/DatagramSocketOptions;
    MethodParameters:
         Name  Flags
      options  

  public io.vertx.core.datagram.DatagramSocket createDatagramSocket();
    descriptor: ()Lio/vertx/core/datagram/DatagramSocket;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 268
            aload 0 /* this */
            new io.vertx.core.datagram.DatagramSocketOptions
            dup
            invokespecial io.vertx.core.datagram.DatagramSocketOptions.<init>:()V
            invokevirtual io.vertx.core.impl.VertxImpl.createDatagramSocket:(Lio/vertx/core/datagram/DatagramSocketOptions;)Lio/vertx/core/datagram/DatagramSocket;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.net.NetServer createNetServer(io.vertx.core.net.NetServerOptions);
    descriptor: (Lio/vertx/core/net/NetServerOptions;)Lio/vertx/core/net/NetServer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.net.NetServerOptions options
         0: .line 272
            new io.vertx.core.net.impl.NetServerImpl
            dup
            aload 0 /* this */
            aload 1 /* options */
            invokespecial io.vertx.core.net.impl.NetServerImpl.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/net/NetServerOptions;)V
            areturn
        end local 1 // io.vertx.core.net.NetServerOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  options  Lio/vertx/core/net/NetServerOptions;
    MethodParameters:
         Name  Flags
      options  

  public io.vertx.core.net.NetServer createNetServer();
    descriptor: ()Lio/vertx/core/net/NetServer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 277
            aload 0 /* this */
            new io.vertx.core.net.NetServerOptions
            dup
            invokespecial io.vertx.core.net.NetServerOptions.<init>:()V
            invokevirtual io.vertx.core.impl.VertxImpl.createNetServer:(Lio/vertx/core/net/NetServerOptions;)Lio/vertx/core/net/NetServer;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.net.NetClient createNetClient(io.vertx.core.net.NetClientOptions);
    descriptor: (Lio/vertx/core/net/NetClientOptions;)Lio/vertx/core/net/NetClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.net.NetClientOptions options
         0: .line 281
            new io.vertx.core.net.impl.NetClientImpl
            dup
            aload 0 /* this */
            aload 1 /* options */
            invokespecial io.vertx.core.net.impl.NetClientImpl.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/net/NetClientOptions;)V
            areturn
        end local 1 // io.vertx.core.net.NetClientOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  options  Lio/vertx/core/net/NetClientOptions;
    MethodParameters:
         Name  Flags
      options  

  public io.vertx.core.net.NetClient createNetClient();
    descriptor: ()Lio/vertx/core/net/NetClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 286
            aload 0 /* this */
            new io.vertx.core.net.NetClientOptions
            dup
            invokespecial io.vertx.core.net.NetClientOptions.<init>:()V
            invokevirtual io.vertx.core.impl.VertxImpl.createNetClient:(Lio/vertx/core/net/NetClientOptions;)Lio/vertx/core/net/NetClient;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.net.impl.transport.Transport transport();
    descriptor: ()Lio/vertx/core/net/impl/transport/Transport;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 291
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.transport:Lio/vertx/core/net/impl/transport/Transport;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public boolean isNativeTransportEnabled();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 296
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.transport:Lio/vertx/core/net/impl/transport/Transport;
            getstatic io.vertx.core.net.impl.transport.Transport.JDK:Lio/vertx/core/net/impl/transport/Transport;
            if_acmpeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.file.FileSystem fileSystem();
    descriptor: ()Lio/vertx/core/file/FileSystem;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 300
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.fileSystem:Lio/vertx/core/file/FileSystem;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.shareddata.SharedData sharedData();
    descriptor: ()Lio/vertx/core/shareddata/SharedData;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 304
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.sharedData:Lio/vertx/core/shareddata/SharedData;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.http.HttpServer createHttpServer(io.vertx.core.http.HttpServerOptions);
    descriptor: (Lio/vertx/core/http/HttpServerOptions;)Lio/vertx/core/http/HttpServer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.http.HttpServerOptions serverOptions
         0: .line 308
            new io.vertx.core.http.impl.HttpServerImpl
            dup
            aload 0 /* this */
            aload 1 /* serverOptions */
            invokespecial io.vertx.core.http.impl.HttpServerImpl.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/http/HttpServerOptions;)V
            areturn
        end local 1 // io.vertx.core.http.HttpServerOptions serverOptions
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  serverOptions  Lio/vertx/core/http/HttpServerOptions;
    MethodParameters:
               Name  Flags
      serverOptions  

  public io.vertx.core.http.HttpServer createHttpServer();
    descriptor: ()Lio/vertx/core/http/HttpServer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 313
            aload 0 /* this */
            new io.vertx.core.http.HttpServerOptions
            dup
            invokespecial io.vertx.core.http.HttpServerOptions.<init>:()V
            invokevirtual io.vertx.core.impl.VertxImpl.createHttpServer:(Lio/vertx/core/http/HttpServerOptions;)Lio/vertx/core/http/HttpServer;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.http.HttpClient createHttpClient(io.vertx.core.http.HttpClientOptions);
    descriptor: (Lio/vertx/core/http/HttpClientOptions;)Lio/vertx/core/http/HttpClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.http.HttpClientOptions options
         0: .line 317
            new io.vertx.core.http.impl.HttpClientImpl
            dup
            aload 0 /* this */
            aload 1 /* options */
            invokespecial io.vertx.core.http.impl.HttpClientImpl.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/http/HttpClientOptions;)V
            areturn
        end local 1 // io.vertx.core.http.HttpClientOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  options  Lio/vertx/core/http/HttpClientOptions;
    MethodParameters:
         Name  Flags
      options  

  public io.vertx.core.http.HttpClient createHttpClient();
    descriptor: ()Lio/vertx/core/http/HttpClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 322
            aload 0 /* this */
            new io.vertx.core.http.HttpClientOptions
            dup
            invokespecial io.vertx.core.http.HttpClientOptions.<init>:()V
            invokevirtual io.vertx.core.impl.VertxImpl.createHttpClient:(Lio/vertx/core/http/HttpClientOptions;)Lio/vertx/core/http/HttpClient;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.eventbus.EventBus eventBus();
    descriptor: ()Lio/vertx/core/eventbus/EventBus;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 326
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.eventBus:Lio/vertx/core/eventbus/EventBus;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public long setPeriodic(long, io.vertx.core.Handler<java.lang.Long>);
    descriptor: (JLio/vertx/core/Handler;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // long delay
        start local 3 // io.vertx.core.Handler handler
         0: .line 330
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.getOrCreateContext:()Lio/vertx/core/impl/ContextImpl;
            aload 3 /* handler */
            lload 1 /* delay */
            iconst_1
            invokevirtual io.vertx.core.impl.VertxImpl.scheduleTimeout:(Lio/vertx/core/impl/ContextImpl;Lio/vertx/core/Handler;JZ)J
            lreturn
        end local 3 // io.vertx.core.Handler handler
        end local 1 // long delay
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/vertx/core/impl/VertxImpl;
            0    1     1    delay  J
            0    1     3  handler  Lio/vertx/core/Handler<Ljava/lang/Long;>;
    Signature: (JLio/vertx/core/Handler<Ljava/lang/Long;>;)J
    MethodParameters:
         Name  Flags
      delay    
      handler  

  public io.vertx.core.TimeoutStream periodicStream(long);
    descriptor: (J)Lio/vertx/core/TimeoutStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // long delay
         0: .line 335
            new io.vertx.core.impl.VertxImpl$TimeoutStreamImpl
            dup
            aload 0 /* this */
            lload 1 /* delay */
            iconst_1
            invokespecial io.vertx.core.impl.VertxImpl$TimeoutStreamImpl.<init>:(Lio/vertx/core/impl/VertxImpl;JZ)V
            areturn
        end local 1 // long delay
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  delay  J
    MethodParameters:
       Name  Flags
      delay  

  public long setTimer(long, io.vertx.core.Handler<java.lang.Long>);
    descriptor: (JLio/vertx/core/Handler;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // long delay
        start local 3 // io.vertx.core.Handler handler
         0: .line 339
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.getOrCreateContext:()Lio/vertx/core/impl/ContextImpl;
            aload 3 /* handler */
            lload 1 /* delay */
            iconst_0
            invokevirtual io.vertx.core.impl.VertxImpl.scheduleTimeout:(Lio/vertx/core/impl/ContextImpl;Lio/vertx/core/Handler;JZ)J
            lreturn
        end local 3 // io.vertx.core.Handler handler
        end local 1 // long delay
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lio/vertx/core/impl/VertxImpl;
            0    1     1    delay  J
            0    1     3  handler  Lio/vertx/core/Handler<Ljava/lang/Long;>;
    Signature: (JLio/vertx/core/Handler<Ljava/lang/Long;>;)J
    MethodParameters:
         Name  Flags
      delay    
      handler  

  public io.vertx.core.TimeoutStream timerStream(long);
    descriptor: (J)Lio/vertx/core/TimeoutStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // long delay
         0: .line 344
            new io.vertx.core.impl.VertxImpl$TimeoutStreamImpl
            dup
            aload 0 /* this */
            lload 1 /* delay */
            iconst_0
            invokespecial io.vertx.core.impl.VertxImpl$TimeoutStreamImpl.<init>:(Lio/vertx/core/impl/VertxImpl;JZ)V
            areturn
        end local 1 // long delay
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  delay  J
    MethodParameters:
       Name  Flags
      delay  

  public void runOnContext(io.vertx.core.Handler<java.lang.Void>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler task
         0: .line 348
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.getOrCreateContext:()Lio/vertx/core/impl/ContextImpl;
            astore 2 /* context */
        start local 2 // io.vertx.core.impl.ContextImpl context
         1: .line 349
            aload 2 /* context */
            aload 1 /* task */
            invokevirtual io.vertx.core.impl.ContextImpl.runOnContext:(Lio/vertx/core/Handler;)V
         2: .line 350
            return
        end local 2 // io.vertx.core.impl.ContextImpl context
        end local 1 // io.vertx.core.Handler task
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/core/impl/VertxImpl;
            0    3     1     task  Lio/vertx/core/Handler<Ljava/lang/Void;>;
            1    3     2  context  Lio/vertx/core/impl/ContextImpl;
    Signature: (Lio/vertx/core/Handler<Ljava/lang/Void;>;)V
    MethodParameters:
      Name  Flags
      task  

  public java.util.concurrent.ExecutorService getWorkerPool();
    descriptor: ()Ljava/util/concurrent/ExecutorService;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 354
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
            invokevirtual io.vertx.core.impl.WorkerPool.executor:()Ljava/util/concurrent/ExecutorService;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.netty.channel.EventLoopGroup getEventLoopGroup();
    descriptor: ()Lio/netty/channel/EventLoopGroup;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 358
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.eventLoopGroup:Lio/netty/channel/EventLoopGroup;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.netty.channel.EventLoopGroup getAcceptorEventLoopGroup();
    descriptor: ()Lio/netty/channel/EventLoopGroup;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 362
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.acceptorEventLoopGroup:Lio/netty/channel/EventLoopGroup;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.impl.ContextImpl getOrCreateContext();
    descriptor: ()Lio/vertx/core/impl/ContextImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 366
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.getContext:()Lio/vertx/core/impl/ContextImpl;
            astore 1 /* ctx */
        start local 1 // io.vertx.core.impl.ContextImpl ctx
         1: .line 367
            aload 1 /* ctx */
            ifnonnull 3
         2: .line 369
            aload 0 /* this */
            aconst_null
            aconst_null
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
            invokevirtual io.vertx.core.impl.VertxImpl.createEventLoopContext:(Ljava/lang/String;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/EventLoopContext;
            astore 1 /* ctx */
         3: .line 371
      StackMap locals: io.vertx.core.impl.ContextImpl
      StackMap stack:
            aload 1 /* ctx */
            areturn
        end local 1 // io.vertx.core.impl.ContextImpl ctx
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/vertx/core/impl/VertxImpl;
            1    4     1   ctx  Lio/vertx/core/impl/ContextImpl;

  public java.util.Map<io.vertx.core.net.impl.ServerID, io.vertx.core.http.impl.HttpServerImpl> sharedHttpServers();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 375
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.sharedHttpServers:Ljava/util/Map;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;
    Signature: ()Ljava/util/Map<Lio/vertx/core/net/impl/ServerID;Lio/vertx/core/http/impl/HttpServerImpl;>;

  public java.util.Map<io.vertx.core.net.impl.ServerID, io.vertx.core.net.impl.NetServerImpl> sharedNetServers();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 379
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.sharedNetServers:Ljava/util/Map;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;
    Signature: ()Ljava/util/Map<Lio/vertx/core/net/impl/ServerID;Lio/vertx/core/net/impl/NetServerImpl;>;

  public boolean isMetricsEnabled();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 384
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.spi.metrics.Metrics getMetrics();
    descriptor: ()Lio/vertx/core/spi/metrics/Metrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 389
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public boolean cancelTimer(long);
    descriptor: (J)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // long id
         0: .line 393
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.timeouts:Ljava/util/concurrent/ConcurrentMap;
            lload 1 /* id */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.vertx.core.impl.VertxImpl$InternalTimerHandler
            astore 3 /* handler */
        start local 3 // io.vertx.core.impl.VertxImpl$InternalTimerHandler handler
         1: .line 394
            aload 3 /* handler */
            ifnull 4
         2: .line 395
            aload 3 /* handler */
            invokevirtual io.vertx.core.impl.VertxImpl$InternalTimerHandler.cancel:()V
         3: .line 396
            iconst_1
            ireturn
         4: .line 398
      StackMap locals: io.vertx.core.impl.VertxImpl$InternalTimerHandler
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // io.vertx.core.impl.VertxImpl$InternalTimerHandler handler
        end local 1 // long id
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lio/vertx/core/impl/VertxImpl;
            0    5     1       id  J
            1    5     3  handler  Lio/vertx/core/impl/VertxImpl$InternalTimerHandler;
    MethodParameters:
      Name  Flags
      id    

  public io.vertx.core.impl.EventLoopContext createEventLoopContext(java.lang.String, io.vertx.core.impl.WorkerPool, io.vertx.core.json.JsonObject, java.lang.ClassLoader);
    descriptor: (Ljava/lang/String;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/EventLoopContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String deploymentID
        start local 2 // io.vertx.core.impl.WorkerPool workerPool
        start local 3 // io.vertx.core.json.JsonObject config
        start local 4 // java.lang.ClassLoader tccl
         0: .line 404
            new io.vertx.core.impl.EventLoopContext
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.internalBlockingPool:Lio/vertx/core/impl/WorkerPool;
            aload 2 /* workerPool */
            ifnull 1
            aload 2 /* workerPool */
            goto 2
      StackMap locals: io.vertx.core.impl.VertxImpl java.lang.String io.vertx.core.impl.WorkerPool io.vertx.core.json.JsonObject java.lang.ClassLoader
      StackMap stack: new 0 new 0 io.vertx.core.impl.VertxImpl io.vertx.core.impl.WorkerPool
         1: aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
      StackMap locals: io.vertx.core.impl.VertxImpl java.lang.String io.vertx.core.impl.WorkerPool io.vertx.core.json.JsonObject java.lang.ClassLoader
      StackMap stack: new 0 new 0 io.vertx.core.impl.VertxImpl io.vertx.core.impl.WorkerPool io.vertx.core.impl.WorkerPool
         2: aload 1 /* deploymentID */
            aload 3 /* config */
            aload 4 /* tccl */
            invokespecial io.vertx.core.impl.EventLoopContext.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/WorkerPool;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)V
            areturn
        end local 4 // java.lang.ClassLoader tccl
        end local 3 // io.vertx.core.json.JsonObject config
        end local 2 // io.vertx.core.impl.WorkerPool workerPool
        end local 1 // java.lang.String deploymentID
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lio/vertx/core/impl/VertxImpl;
            0    3     1  deploymentID  Ljava/lang/String;
            0    3     2    workerPool  Lio/vertx/core/impl/WorkerPool;
            0    3     3        config  Lio/vertx/core/json/JsonObject;
            0    3     4          tccl  Ljava/lang/ClassLoader;
    MethodParameters:
              Name  Flags
      deploymentID  
      workerPool    
      config        
      tccl          

  public io.vertx.core.impl.EventLoopContext createEventLoopContext(io.netty.channel.EventLoop, io.vertx.core.impl.WorkerPool, java.lang.ClassLoader);
    descriptor: (Lio/netty/channel/EventLoop;Lio/vertx/core/impl/WorkerPool;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/EventLoopContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=4, args_size=4
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.netty.channel.EventLoop eventLoop
        start local 2 // io.vertx.core.impl.WorkerPool workerPool
        start local 3 // java.lang.ClassLoader tccl
         0: .line 409
            new io.vertx.core.impl.EventLoopContext
            dup
            aload 0 /* this */
            aload 1 /* eventLoop */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.internalBlockingPool:Lio/vertx/core/impl/WorkerPool;
            aload 2 /* workerPool */
            ifnull 1
            aload 2 /* workerPool */
            goto 2
      StackMap locals: io.vertx.core.impl.VertxImpl io.netty.channel.EventLoop io.vertx.core.impl.WorkerPool java.lang.ClassLoader
      StackMap stack: new 0 new 0 io.vertx.core.impl.VertxImpl io.netty.channel.EventLoop io.vertx.core.impl.WorkerPool
         1: aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
      StackMap locals: io.vertx.core.impl.VertxImpl io.netty.channel.EventLoop io.vertx.core.impl.WorkerPool java.lang.ClassLoader
      StackMap stack: new 0 new 0 io.vertx.core.impl.VertxImpl io.netty.channel.EventLoop io.vertx.core.impl.WorkerPool io.vertx.core.impl.WorkerPool
         2: aconst_null
            aconst_null
            aload 3 /* tccl */
            invokespecial io.vertx.core.impl.EventLoopContext.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/netty/channel/EventLoop;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/WorkerPool;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)V
            areturn
        end local 3 // java.lang.ClassLoader tccl
        end local 2 // io.vertx.core.impl.WorkerPool workerPool
        end local 1 // io.netty.channel.EventLoop eventLoop
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lio/vertx/core/impl/VertxImpl;
            0    3     1   eventLoop  Lio/netty/channel/EventLoop;
            0    3     2  workerPool  Lio/vertx/core/impl/WorkerPool;
            0    3     3        tccl  Ljava/lang/ClassLoader;
    MethodParameters:
            Name  Flags
      eventLoop   
      workerPool  
      tccl        

  public io.vertx.core.impl.ContextImpl createWorkerContext(boolean, java.lang.String, io.vertx.core.impl.WorkerPool, io.vertx.core.json.JsonObject, java.lang.ClassLoader);
    descriptor: (ZLjava/lang/String;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/ContextImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=6
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // boolean multiThreaded
        start local 2 // java.lang.String deploymentID
        start local 3 // io.vertx.core.impl.WorkerPool workerPool
        start local 4 // io.vertx.core.json.JsonObject config
        start local 5 // java.lang.ClassLoader tccl
         0: .line 415
            aload 3 /* workerPool */
            ifnonnull 2
         1: .line 416
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
            astore 3 /* workerPool */
         2: .line 418
      StackMap locals:
      StackMap stack:
            iload 1 /* multiThreaded */
            ifeq 4
         3: .line 419
            new io.vertx.core.impl.MultiThreadedWorkerContext
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.internalBlockingPool:Lio/vertx/core/impl/WorkerPool;
            aload 3 /* workerPool */
            aload 2 /* deploymentID */
            aload 4 /* config */
            aload 5 /* tccl */
            invokespecial io.vertx.core.impl.MultiThreadedWorkerContext.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/WorkerPool;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)V
            areturn
         4: .line 421
      StackMap locals:
      StackMap stack:
            new io.vertx.core.impl.WorkerContext
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.internalBlockingPool:Lio/vertx/core/impl/WorkerPool;
            aload 3 /* workerPool */
            aload 2 /* deploymentID */
            aload 4 /* config */
            aload 5 /* tccl */
            invokespecial io.vertx.core.impl.WorkerContext.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/impl/WorkerPool;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)V
            areturn
        end local 5 // java.lang.ClassLoader tccl
        end local 4 // io.vertx.core.json.JsonObject config
        end local 3 // io.vertx.core.impl.WorkerPool workerPool
        end local 2 // java.lang.String deploymentID
        end local 1 // boolean multiThreaded
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lio/vertx/core/impl/VertxImpl;
            0    5     1  multiThreaded  Z
            0    5     2   deploymentID  Ljava/lang/String;
            0    5     3     workerPool  Lio/vertx/core/impl/WorkerPool;
            0    5     4         config  Lio/vertx/core/json/JsonObject;
            0    5     5           tccl  Ljava/lang/ClassLoader;
    MethodParameters:
               Name  Flags
      multiThreaded  
      deploymentID   
      workerPool     
      config         
      tccl           

  public io.vertx.core.dns.DnsClient createDnsClient(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Lio/vertx/core/dns/DnsClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // int port
        start local 2 // java.lang.String host
         0: .line 427
            aload 0 /* this */
            new io.vertx.core.dns.DnsClientOptions
            dup
            invokespecial io.vertx.core.dns.DnsClientOptions.<init>:()V
            aload 2 /* host */
            invokevirtual io.vertx.core.dns.DnsClientOptions.setHost:(Ljava/lang/String;)Lio/vertx/core/dns/DnsClientOptions;
            iload 1 /* port */
            invokevirtual io.vertx.core.dns.DnsClientOptions.setPort:(I)Lio/vertx/core/dns/DnsClientOptions;
            invokevirtual io.vertx.core.impl.VertxImpl.createDnsClient:(Lio/vertx/core/dns/DnsClientOptions;)Lio/vertx/core/dns/DnsClient;
            areturn
        end local 2 // java.lang.String host
        end local 1 // int port
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  port  I
            0    1     2  host  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      port  
      host  

  public io.vertx.core.dns.DnsClient createDnsClient();
    descriptor: ()Lio/vertx/core/dns/DnsClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 432
            aload 0 /* this */
            new io.vertx.core.dns.DnsClientOptions
            dup
            invokespecial io.vertx.core.dns.DnsClientOptions.<init>:()V
            invokevirtual io.vertx.core.impl.VertxImpl.createDnsClient:(Lio/vertx/core/dns/DnsClientOptions;)Lio/vertx/core/dns/DnsClient;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.dns.DnsClient createDnsClient(io.vertx.core.dns.DnsClientOptions);
    descriptor: (Lio/vertx/core/dns/DnsClientOptions;)Lio/vertx/core/dns/DnsClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.dns.DnsClientOptions options
         0: .line 437
            aload 1 /* options */
            invokevirtual io.vertx.core.dns.DnsClientOptions.getHost:()Ljava/lang/String;
            astore 2 /* host */
        start local 2 // java.lang.String host
         1: .line 438
            aload 1 /* options */
            invokevirtual io.vertx.core.dns.DnsClientOptions.getPort:()I
            istore 3 /* port */
        start local 3 // int port
         2: .line 439
            aload 2 /* host */
            ifnull 3
            iload 3 /* port */
            ifge 9
         3: .line 440
      StackMap locals: java.lang.String int
      StackMap stack:
            new io.vertx.core.impl.resolver.DnsResolverProvider
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.addressResolverOptions:Lio/vertx/core/dns/AddressResolverOptions;
            invokespecial io.vertx.core.impl.resolver.DnsResolverProvider.<init>:(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/dns/AddressResolverOptions;)V
            astore 4 /* provider */
        start local 4 // io.vertx.core.impl.resolver.DnsResolverProvider provider
         4: .line 441
            aload 4 /* provider */
            invokevirtual io.vertx.core.impl.resolver.DnsResolverProvider.nameServerAddresses:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.net.InetSocketAddress
            astore 5 /* address */
        start local 5 // java.net.InetSocketAddress address
         5: .line 443
            new io.vertx.core.dns.DnsClientOptions
            dup
            aload 1 /* options */
            invokespecial io.vertx.core.dns.DnsClientOptions.<init>:(Lio/vertx/core/dns/DnsClientOptions;)V
         6: .line 444
            aload 5 /* address */
            invokevirtual java.net.InetSocketAddress.getAddress:()Ljava/net/InetAddress;
            invokevirtual java.net.InetAddress.getHostAddress:()Ljava/lang/String;
            invokevirtual io.vertx.core.dns.DnsClientOptions.setHost:(Ljava/lang/String;)Lio/vertx/core/dns/DnsClientOptions;
         7: .line 445
            aload 5 /* address */
            invokevirtual java.net.InetSocketAddress.getPort:()I
            invokevirtual io.vertx.core.dns.DnsClientOptions.setPort:(I)Lio/vertx/core/dns/DnsClientOptions;
         8: .line 443
            astore 1 /* options */
        end local 5 // java.net.InetSocketAddress address
        end local 4 // io.vertx.core.impl.resolver.DnsResolverProvider provider
         9: .line 447
      StackMap locals:
      StackMap stack:
            new io.vertx.core.dns.impl.DnsClientImpl
            dup
            aload 0 /* this */
            aload 1 /* options */
            invokespecial io.vertx.core.dns.impl.DnsClientImpl.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/dns/DnsClientOptions;)V
            areturn
        end local 3 // int port
        end local 2 // java.lang.String host
        end local 1 // io.vertx.core.dns.DnsClientOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0      this  Lio/vertx/core/impl/VertxImpl;
            0   10     1   options  Lio/vertx/core/dns/DnsClientOptions;
            1   10     2      host  Ljava/lang/String;
            2   10     3      port  I
            4    9     4  provider  Lio/vertx/core/impl/resolver/DnsResolverProvider;
            5    9     5   address  Ljava/net/InetSocketAddress;
    MethodParameters:
         Name  Flags
      options  

  private io.vertx.core.spi.metrics.VertxMetrics initialiseMetrics(io.vertx.core.VertxOptions);
    descriptor: (Lio/vertx/core/VertxOptions;)Lio/vertx/core/spi/metrics/VertxMetrics;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.VertxOptions options
         0: .line 451
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMetricsOptions:()Lio/vertx/core/metrics/MetricsOptions;
            ifnull 10
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMetricsOptions:()Lio/vertx/core/metrics/MetricsOptions;
            invokevirtual io.vertx.core.metrics.MetricsOptions.isEnabled:()Z
            ifeq 10
         1: .line 452
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getMetricsOptions:()Lio/vertx/core/metrics/MetricsOptions;
            invokevirtual io.vertx.core.metrics.MetricsOptions.getFactory:()Lio/vertx/core/spi/VertxMetricsFactory;
            astore 2 /* factory */
        start local 2 // io.vertx.core.spi.VertxMetricsFactory factory
         2: .line 453
            aload 2 /* factory */
            ifnonnull 6
         3: .line 454
            ldc Lio/vertx/core/spi/VertxMetricsFactory;
            invokestatic io.vertx.core.ServiceHelper.loadFactoryOrNull:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast io.vertx.core.spi.VertxMetricsFactory
            astore 2 /* factory */
         4: .line 455
            aload 2 /* factory */
            ifnonnull 6
         5: .line 456
            getstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
            ldc "Metrics has been set to enabled but no VertxMetricsFactory found on classpath"
            invokevirtual io.vertx.core.logging.Logger.warn:(Ljava/lang/Object;)V
         6: .line 459
      StackMap locals: io.vertx.core.spi.VertxMetricsFactory
      StackMap stack:
            aload 2 /* factory */
            ifnull 10
         7: .line 460
            aload 2 /* factory */
            aload 1 /* options */
            invokeinterface io.vertx.core.spi.VertxMetricsFactory.metrics:(Lio/vertx/core/VertxOptions;)Lio/vertx/core/spi/metrics/VertxMetrics;
            astore 3 /* metrics */
        start local 3 // io.vertx.core.spi.metrics.VertxMetrics metrics
         8: .line 461
            aload 3 /* metrics */
            new java.lang.StringBuilder
            dup
            ldc "The metric instance created from "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* factory */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " cannot be null"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         9: .line 462
            aload 3 /* metrics */
            areturn
        end local 3 // io.vertx.core.spi.metrics.VertxMetrics metrics
        end local 2 // io.vertx.core.spi.VertxMetricsFactory factory
        10: .line 465
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // io.vertx.core.VertxOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lio/vertx/core/impl/VertxImpl;
            0   11     1  options  Lio/vertx/core/VertxOptions;
            2   10     2  factory  Lio/vertx/core/spi/VertxMetricsFactory;
            8   10     3  metrics  Lio/vertx/core/spi/metrics/VertxMetrics;
    MethodParameters:
         Name  Flags
      options  

  private io.vertx.core.spi.cluster.ClusterManager getClusterManager(io.vertx.core.VertxOptions);
    descriptor: (Lio/vertx/core/VertxOptions;)Lio/vertx/core/spi/cluster/ClusterManager;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.VertxOptions options
         0: .line 469
            aload 1 /* options */
            invokevirtual io.vertx.core.VertxOptions.getClusterManager:()Lio/vertx/core/spi/cluster/ClusterManager;
            astore 2 /* mgr */
        start local 2 // io.vertx.core.spi.cluster.ClusterManager mgr
         1: .line 470
            aload 2 /* mgr */
            ifnonnull 12
         2: .line 471
            ldc "vertx.cluster.managerClass"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* clusterManagerClassName */
        start local 3 // java.lang.String clusterManagerClassName
         3: .line 472
            aload 3 /* clusterManagerClassName */
            ifnull 9
         4: .line 475
            aload 3 /* clusterManagerClassName */
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 4 /* clazz */
        start local 4 // java.lang.Class clazz
         5: .line 476
            aload 4 /* clazz */
            invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
            checkcast io.vertx.core.spi.cluster.ClusterManager
            astore 2 /* mgr */
        end local 4 // java.lang.Class clazz
         6: .line 477
            goto 12
      StackMap locals: io.vertx.core.impl.VertxImpl io.vertx.core.VertxOptions io.vertx.core.spi.cluster.ClusterManager java.lang.String
      StackMap stack: java.lang.Exception
         7: astore 4 /* e */
        start local 4 // java.lang.Exception e
         8: .line 478
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Failed to instantiate "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* clusterManagerClassName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 4 /* e */
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.lang.Exception e
         9: .line 481
      StackMap locals:
      StackMap stack:
            ldc Lio/vertx/core/spi/cluster/ClusterManager;
            invokestatic io.vertx.core.ServiceHelper.loadFactoryOrNull:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast io.vertx.core.spi.cluster.ClusterManager
            astore 2 /* mgr */
        10: .line 482
            aload 2 /* mgr */
            ifnonnull 12
        11: .line 483
            new java.lang.IllegalStateException
            dup
            ldc "No ClusterManagerFactory instances found on classpath"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.String clusterManagerClassName
        12: .line 487
      StackMap locals:
      StackMap stack:
            aload 2 /* mgr */
            areturn
        end local 2 // io.vertx.core.spi.cluster.ClusterManager mgr
        end local 1 // io.vertx.core.VertxOptions options
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   13     0                     this  Lio/vertx/core/impl/VertxImpl;
            0   13     1                  options  Lio/vertx/core/VertxOptions;
            1   13     2                      mgr  Lio/vertx/core/spi/cluster/ClusterManager;
            3   12     3  clusterManagerClassName  Ljava/lang/String;
            5    6     4                    clazz  Ljava/lang/Class<*>;
            8    9     4                        e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           4     6       7  Class java.lang.Exception
    MethodParameters:
         Name  Flags
      options  

  private long scheduleTimeout(io.vertx.core.impl.ContextImpl, io.vertx.core.Handler<java.lang.Long>, long, );
    descriptor: (Lio/vertx/core/impl/ContextImpl;Lio/vertx/core/Handler;JZ)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=9, args_size=5
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.impl.ContextImpl context
        start local 2 // io.vertx.core.Handler handler
        start local 3 // long delay
        start local 5 // boolean periodic
         0: .line 491
            lload 3 /* delay */
            lconst_1
            lcmp
            ifge 2
         1: .line 492
            new java.lang.IllegalArgumentException
            dup
            ldc "Cannot schedule a timer with delay < 1 ms"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 494
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.timeoutCounter:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.getAndIncrement:()J
            lstore 6 /* timerId */
        start local 6 // long timerId
         3: .line 495
            new io.vertx.core.impl.VertxImpl$InternalTimerHandler
            dup
            aload 0 /* this */
            lload 6 /* timerId */
            aload 2 /* handler */
            iload 5 /* periodic */
            lload 3 /* delay */
            aload 1 /* context */
            invokespecial io.vertx.core.impl.VertxImpl$InternalTimerHandler.<init>:(Lio/vertx/core/impl/VertxImpl;JLio/vertx/core/Handler;ZJLio/vertx/core/impl/ContextImpl;)V
            astore 8 /* task */
        start local 8 // io.vertx.core.impl.VertxImpl$InternalTimerHandler task
         4: .line 496
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.timeouts:Ljava/util/concurrent/ConcurrentMap;
            lload 6 /* timerId */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aload 8 /* task */
            invokeinterface java.util.concurrent.ConcurrentMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 497
            aload 1 /* context */
            aload 8 /* task */
            invokevirtual io.vertx.core.impl.ContextImpl.addCloseHook:(Lio/vertx/core/Closeable;)V
         6: .line 498
            lload 6 /* timerId */
            lreturn
        end local 8 // io.vertx.core.impl.VertxImpl$InternalTimerHandler task
        end local 6 // long timerId
        end local 5 // boolean periodic
        end local 3 // long delay
        end local 2 // io.vertx.core.Handler handler
        end local 1 // io.vertx.core.impl.ContextImpl context
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lio/vertx/core/impl/VertxImpl;
            0    7     1   context  Lio/vertx/core/impl/ContextImpl;
            0    7     2   handler  Lio/vertx/core/Handler<Ljava/lang/Long;>;
            0    7     3     delay  J
            0    7     5  periodic  Z
            3    7     6   timerId  J
            4    7     8      task  Lio/vertx/core/impl/VertxImpl$InternalTimerHandler;
    Signature: (Lio/vertx/core/impl/ContextImpl;Lio/vertx/core/Handler<Ljava/lang/Long;>;JZ)J
    MethodParameters:
          Name  Flags
      context   
      handler   
      delay     
      periodic  

  public io.vertx.core.impl.ContextImpl getContext();
    descriptor: ()Lio/vertx/core/impl/ContextImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 502
            invokestatic io.vertx.core.impl.ContextImpl.context:()Lio/vertx/core/Context;
            checkcast io.vertx.core.impl.ContextImpl
            astore 1 /* context */
        start local 1 // io.vertx.core.impl.ContextImpl context
         1: .line 503
            aload 1 /* context */
            ifnull 3
            aload 1 /* context */
            getfield io.vertx.core.impl.ContextImpl.owner:Lio/vertx/core/impl/VertxInternal;
            aload 0 /* this */
            if_acmpne 3
         2: .line 504
            aload 1 /* context */
            areturn
         3: .line 506
      StackMap locals: io.vertx.core.impl.ContextImpl
      StackMap stack:
            aconst_null
            areturn
        end local 1 // io.vertx.core.impl.ContextImpl context
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/core/impl/VertxImpl;
            1    4     1  context  Lio/vertx/core/impl/ContextImpl;

  public io.vertx.core.spi.cluster.ClusterManager getClusterManager();
    descriptor: ()Lio/vertx/core/spi/cluster/ClusterManager;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 510
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 515
            aload 0 /* this */
            aconst_null
            invokevirtual io.vertx.core.impl.VertxImpl.close:(Lio/vertx/core/Handler;)V
         1: .line 516
            return
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;

  private void closeClusterManager(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler completionHandler
         0: .line 519
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            ifnull 3
         1: .line 520
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            aload 0 /* this */
            aload 1 /* completionHandler */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$7(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.core.spi.cluster.ClusterManager.leave:(Lio/vertx/core/Handler;)V
         2: .line 528
            goto 5
      StackMap locals:
      StackMap stack:
         3: aload 1 /* completionHandler */
            ifnull 5
         4: .line 529
            aload 0 /* this */
            aload 1 /* completionHandler */
            invokedynamic handle(Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$9(Lio/vertx/core/Handler;Ljava/lang/Void;)V (6)
                  (Ljava/lang/Void;)V
            invokevirtual io.vertx.core.impl.VertxImpl.runOnContext:(Lio/vertx/core/Handler;)V
         5: .line 531
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.Handler completionHandler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Lio/vertx/core/impl/VertxImpl;
            0    6     1  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
    MethodParameters:
                   Name  Flags
      completionHandler  

  public synchronized void close(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler completionHandler
         0: .line 535
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.closed:Z
            ifne 1
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.eventBus:Lio/vertx/core/eventbus/EventBus;
            ifnonnull 4
         1: .line 537
      StackMap locals:
      StackMap stack:
            aload 1 /* completionHandler */
            ifnull 3
         2: .line 538
            aload 1 /* completionHandler */
            invokestatic io.vertx.core.Future.succeededFuture:()Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         3: .line 540
      StackMap locals:
      StackMap stack:
            return
         4: .line 542
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield io.vertx.core.impl.VertxImpl.closed:Z
         5: .line 544
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.closeHooks:Lio/vertx/core/impl/CloseHooks;
            aload 0 /* this */
            aload 1 /* completionHandler */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$10(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            invokevirtual io.vertx.core.impl.CloseHooks.run:(Lio/vertx/core/Handler;)V
         6: .line 594
            return
        end local 1 // io.vertx.core.Handler completionHandler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lio/vertx/core/impl/VertxImpl;
            0    7     1  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
    MethodParameters:
                   Name  Flags
      completionHandler  

  public void deployVerticle(io.vertx.core.Verticle);
    descriptor: (Lio/vertx/core/Verticle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Verticle verticle
         0: .line 598
            aload 0 /* this */
            aload 1 /* verticle */
            new io.vertx.core.DeploymentOptions
            dup
            invokespecial io.vertx.core.DeploymentOptions.<init>:()V
            aconst_null
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Lio/vertx/core/Verticle;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         1: .line 599
            return
        end local 1 // io.vertx.core.Verticle verticle
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  verticle  Lio/vertx/core/Verticle;
    MethodParameters:
          Name  Flags
      verticle  

  public void deployVerticle(io.vertx.core.Verticle, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Lio/vertx/core/Verticle;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Verticle verticle
        start local 2 // io.vertx.core.Handler completionHandler
         0: .line 603
            aload 0 /* this */
            aload 1 /* verticle */
            new io.vertx.core.DeploymentOptions
            dup
            invokespecial io.vertx.core.DeploymentOptions.<init>:()V
            aload 2 /* completionHandler */
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Lio/vertx/core/Verticle;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         1: .line 604
            return
        end local 2 // io.vertx.core.Handler completionHandler
        end local 1 // io.vertx.core.Verticle verticle
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lio/vertx/core/impl/VertxImpl;
            0    2     1           verticle  Lio/vertx/core/Verticle;
            0    2     2  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
    Signature: (Lio/vertx/core/Verticle;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
    MethodParameters:
                   Name  Flags
      verticle           
      completionHandler  

  public void deployVerticle(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.core.Handler completionHandler
         0: .line 608
            aload 0 /* this */
            aload 1 /* name */
            new io.vertx.core.DeploymentOptions
            dup
            invokespecial io.vertx.core.DeploymentOptions.<init>:()V
            aload 2 /* completionHandler */
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         1: .line 609
            return
        end local 2 // io.vertx.core.Handler completionHandler
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lio/vertx/core/impl/VertxImpl;
            0    2     1               name  Ljava/lang/String;
            0    2     2  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
    MethodParameters:
                   Name  Flags
      name               
      completionHandler  

  public void deployVerticle(io.vertx.core.Verticle, io.vertx.core.DeploymentOptions);
    descriptor: (Lio/vertx/core/Verticle;Lio/vertx/core/DeploymentOptions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Verticle verticle
        start local 2 // io.vertx.core.DeploymentOptions options
         0: .line 613
            aload 0 /* this */
            aload 1 /* verticle */
            aload 2 /* options */
            aconst_null
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Lio/vertx/core/Verticle;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         1: .line 614
            return
        end local 2 // io.vertx.core.DeploymentOptions options
        end local 1 // io.vertx.core.Verticle verticle
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  verticle  Lio/vertx/core/Verticle;
            0    2     2   options  Lio/vertx/core/DeploymentOptions;
    MethodParameters:
          Name  Flags
      verticle  
      options   

  public void deployVerticle(java.lang.Class<? extends io.vertx.core.Verticle>, io.vertx.core.DeploymentOptions);
    descriptor: (Ljava/lang/Class;Lio/vertx/core/DeploymentOptions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.Class verticleClass
        start local 2 // io.vertx.core.DeploymentOptions options
         0: .line 618
            aload 0 /* this */
            aload 1 /* verticleClass */
            invokedynamic get(Ljava/lang/Class;)Ljava/util/function/Supplier;
              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;
                  io/vertx/core/impl/VertxImpl.lambda$18(Ljava/lang/Class;)Lio/vertx/core/Verticle; (6)
                  ()Lio/vertx/core/Verticle;
         1: .line 624
            aload 2 /* options */
         2: .line 618
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Ljava/util/function/Supplier;Lio/vertx/core/DeploymentOptions;)V
         3: .line 625
            return
        end local 2 // io.vertx.core.DeploymentOptions options
        end local 1 // java.lang.Class verticleClass
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lio/vertx/core/impl/VertxImpl;
            0    4     1  verticleClass  Ljava/lang/Class<+Lio/vertx/core/Verticle;>;
            0    4     2        options  Lio/vertx/core/DeploymentOptions;
    Signature: (Ljava/lang/Class<+Lio/vertx/core/Verticle;>;Lio/vertx/core/DeploymentOptions;)V
    MethodParameters:
               Name  Flags
      verticleClass  
      options        

  public void deployVerticle(java.util.function.Supplier<io.vertx.core.Verticle>, io.vertx.core.DeploymentOptions);
    descriptor: (Ljava/util/function/Supplier;Lio/vertx/core/DeploymentOptions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.util.function.Supplier verticleSupplier
        start local 2 // io.vertx.core.DeploymentOptions options
         0: .line 629
            aload 0 /* this */
            aload 1 /* verticleSupplier */
            aload 2 /* options */
            aconst_null
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Ljava/util/function/Supplier;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         1: .line 630
            return
        end local 2 // io.vertx.core.DeploymentOptions options
        end local 1 // java.util.function.Supplier verticleSupplier
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  verticleSupplier  Ljava/util/function/Supplier<Lio/vertx/core/Verticle;>;
            0    2     2           options  Lio/vertx/core/DeploymentOptions;
    Signature: (Ljava/util/function/Supplier<Lio/vertx/core/Verticle;>;Lio/vertx/core/DeploymentOptions;)V
    MethodParameters:
                  Name  Flags
      verticleSupplier  
      options           

  public void deployVerticle(io.vertx.core.Verticle, io.vertx.core.DeploymentOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Lio/vertx/core/Verticle;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Verticle verticle
        start local 2 // io.vertx.core.DeploymentOptions options
        start local 3 // io.vertx.core.Handler completionHandler
         0: .line 634
            aload 2 /* options */
            invokevirtual io.vertx.core.DeploymentOptions.getInstances:()I
            iconst_1
            if_icmpeq 2
         1: .line 635
            new java.lang.IllegalArgumentException
            dup
            ldc "Can't specify > 1 instances for already created verticle"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 637
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* verticle */
            invokedynamic get(Lio/vertx/core/Verticle;)Ljava/util/function/Supplier;
              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;
                  io/vertx/core/impl/VertxImpl.lambda$19(Lio/vertx/core/Verticle;)Lio/vertx/core/Verticle; (6)
                  ()Lio/vertx/core/Verticle;
            aload 2 /* options */
            aload 3 /* completionHandler */
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Ljava/util/function/Supplier;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         3: .line 638
            return
        end local 3 // io.vertx.core.Handler completionHandler
        end local 2 // io.vertx.core.DeploymentOptions options
        end local 1 // io.vertx.core.Verticle verticle
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lio/vertx/core/impl/VertxImpl;
            0    4     1           verticle  Lio/vertx/core/Verticle;
            0    4     2            options  Lio/vertx/core/DeploymentOptions;
            0    4     3  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
    Signature: (Lio/vertx/core/Verticle;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
    MethodParameters:
                   Name  Flags
      verticle           
      options            
      completionHandler  

  public void deployVerticle(java.lang.Class<? extends io.vertx.core.Verticle>, io.vertx.core.DeploymentOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Ljava/lang/Class;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.Class verticleClass
        start local 2 // io.vertx.core.DeploymentOptions options
        start local 3 // io.vertx.core.Handler completionHandler
         0: .line 642
            aload 0 /* this */
            aload 1 /* verticleClass */
            invokedynamic get(Ljava/lang/Class;)Ljava/util/function/Supplier;
              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;
                  io/vertx/core/impl/VertxImpl.lambda$20(Ljava/lang/Class;)Lio/vertx/core/Verticle; (6)
                  ()Lio/vertx/core/Verticle;
         1: .line 648
            aload 2 /* options */
            aload 3 /* completionHandler */
         2: .line 642
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Ljava/util/function/Supplier;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         3: .line 649
            return
        end local 3 // io.vertx.core.Handler completionHandler
        end local 2 // io.vertx.core.DeploymentOptions options
        end local 1 // java.lang.Class verticleClass
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lio/vertx/core/impl/VertxImpl;
            0    4     1      verticleClass  Ljava/lang/Class<+Lio/vertx/core/Verticle;>;
            0    4     2            options  Lio/vertx/core/DeploymentOptions;
            0    4     3  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
    Signature: (Ljava/lang/Class<+Lio/vertx/core/Verticle;>;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
    MethodParameters:
                   Name  Flags
      verticleClass      
      options            
      completionHandler  

  public void deployVerticle(java.util.function.Supplier<io.vertx.core.Verticle>, io.vertx.core.DeploymentOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Ljava/util/function/Supplier;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.util.function.Supplier verticleSupplier
        start local 2 // io.vertx.core.DeploymentOptions options
        start local 3 // io.vertx.core.Handler completionHandler
         0: .line 654
            aload 0 /* this */
            dup
            astore 5
            monitorenter
         1: .line 655
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.closed:Z
            istore 4 /* closed */
        start local 4 // boolean closed
         2: .line 654
            aload 5
            monitorexit
         3: goto 6
        end local 4 // boolean closed
      StackMap locals: io.vertx.core.impl.VertxImpl java.util.function.Supplier io.vertx.core.DeploymentOptions io.vertx.core.Handler top io.vertx.core.impl.VertxImpl
      StackMap stack: java.lang.Throwable
         4: aload 5
            monitorexit
         5: athrow
        start local 4 // boolean closed
         6: .line 657
      StackMap locals: io.vertx.core.impl.VertxImpl java.util.function.Supplier io.vertx.core.DeploymentOptions io.vertx.core.Handler int
      StackMap stack:
            iload 4 /* closed */
            ifeq 10
         7: .line 658
            aload 3 /* completionHandler */
            ifnull 11
         8: .line 659
            aload 3 /* completionHandler */
            ldc "Vert.x closed"
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         9: .line 661
            goto 11
        10: .line 662
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            aload 1 /* verticleSupplier */
            aload 2 /* options */
            aload 3 /* completionHandler */
            invokevirtual io.vertx.core.impl.DeploymentManager.deployVerticle:(Ljava/util/function/Supplier;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
        11: .line 664
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean closed
        end local 3 // io.vertx.core.Handler completionHandler
        end local 2 // io.vertx.core.DeploymentOptions options
        end local 1 // java.util.function.Supplier verticleSupplier
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0               this  Lio/vertx/core/impl/VertxImpl;
            0   12     1   verticleSupplier  Ljava/util/function/Supplier<Lio/vertx/core/Verticle;>;
            0   12     2            options  Lio/vertx/core/DeploymentOptions;
            0   12     3  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
            2    4     4             closed  Z
            6   12     4             closed  Z
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
    Signature: (Ljava/util/function/Supplier<Lio/vertx/core/Verticle;>;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
    MethodParameters:
                   Name  Flags
      verticleSupplier   
      options            
      completionHandler  

  public void deployVerticle(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String name
         0: .line 668
            aload 0 /* this */
            aload 1 /* name */
            new io.vertx.core.DeploymentOptions
            dup
            invokespecial io.vertx.core.DeploymentOptions.<init>:()V
            aconst_null
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         1: .line 669
            return
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public void deployVerticle(java.lang.String, io.vertx.core.DeploymentOptions);
    descriptor: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.core.DeploymentOptions options
         0: .line 673
            aload 0 /* this */
            aload 1 /* name */
            aload 2 /* options */
            aconst_null
            invokevirtual io.vertx.core.impl.VertxImpl.deployVerticle:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         1: .line 674
            return
        end local 2 // io.vertx.core.DeploymentOptions options
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/core/impl/VertxImpl;
            0    2     1     name  Ljava/lang/String;
            0    2     2  options  Lio/vertx/core/DeploymentOptions;
    MethodParameters:
         Name  Flags
      name     
      options  

  public void deployVerticle(java.lang.String, io.vertx.core.DeploymentOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.core.DeploymentOptions options
        start local 3 // io.vertx.core.Handler completionHandler
         0: .line 678
            aload 2 /* options */
            invokevirtual io.vertx.core.DeploymentOptions.isHa:()Z
            ifeq 3
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            ifnull 3
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            invokevirtual io.vertx.core.impl.HAManager.isEnabled:()Z
            ifeq 3
         1: .line 679
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            aload 1 /* name */
            aload 2 /* options */
            aload 3 /* completionHandler */
            invokevirtual io.vertx.core.impl.HAManager.deployVerticle:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         2: .line 680
            goto 4
         3: .line 681
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            aload 1 /* name */
            aload 2 /* options */
            aload 3 /* completionHandler */
            invokevirtual io.vertx.core.impl.DeploymentManager.deployVerticle:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
         4: .line 683
      StackMap locals:
      StackMap stack:
            return
        end local 3 // io.vertx.core.Handler completionHandler
        end local 2 // io.vertx.core.DeploymentOptions options
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Lio/vertx/core/impl/VertxImpl;
            0    5     1               name  Ljava/lang/String;
            0    5     2            options  Lio/vertx/core/DeploymentOptions;
            0    5     3  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
    MethodParameters:
                   Name  Flags
      name               
      options            
      completionHandler  

  public java.lang.String getNodeID();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 687
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            invokeinterface io.vertx.core.spi.cluster.ClusterManager.getNodeID:()Ljava/lang/String;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public void undeploy(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String deploymentID
         0: .line 692
            aload 0 /* this */
            aload 1 /* deploymentID */
            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
                  io/vertx/core/impl/VertxImpl.lambda$21(Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokevirtual io.vertx.core.impl.VertxImpl.undeploy:(Ljava/lang/String;Lio/vertx/core/Handler;)V
         1: .line 694
            return
        end local 1 // java.lang.String deploymentID
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  deploymentID  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      deploymentID  

  public void undeploy(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String deploymentID
        start local 2 // io.vertx.core.Handler completionHandler
         0: .line 698
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            astore 3 /* haManager */
        start local 3 // io.vertx.core.impl.HAManager haManager
         1: .line 699
            invokestatic io.vertx.core.Promise.promise:()Lio/vertx/core/Promise;
            astore 4 /* haFuture */
        start local 4 // io.vertx.core.Promise haFuture
         2: .line 700
            aload 3 /* haManager */
            ifnull 7
            aload 3 /* haManager */
            invokevirtual io.vertx.core.impl.HAManager.isEnabled:()Z
            ifeq 7
         3: .line 701
            aload 0 /* this */
            aload 3 /* haManager */
            aload 1 /* deploymentID */
            invokedynamic handle(Lio/vertx/core/impl/HAManager;Ljava/lang/String;)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
                  io/vertx/core/impl/VertxImpl.lambda$22(Lio/vertx/core/impl/HAManager;Ljava/lang/String;Lio/vertx/core/Promise;)V (6)
                  (Lio/vertx/core/Promise;)V
         4: .line 704
            iconst_0
            aload 4 /* haFuture */
         5: .line 701
            invokevirtual io.vertx.core.impl.VertxImpl.executeBlocking:(Lio/vertx/core/Handler;ZLio/vertx/core/Handler;)V
         6: .line 705
            goto 8
         7: .line 706
      StackMap locals: io.vertx.core.impl.HAManager io.vertx.core.Promise
      StackMap stack:
            aload 4 /* haFuture */
            invokeinterface io.vertx.core.Promise.complete:()V
         8: .line 708
      StackMap locals:
      StackMap stack:
            aload 4 /* haFuture */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            aload 0 /* this */
            aload 1 /* deploymentID */
            invokedynamic apply(Lio/vertx/core/impl/VertxImpl;Ljava/lang/String;)Ljava/util/function/Function;
              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;)Ljava/lang/Object;
                  io/vertx/core/impl/VertxImpl.lambda$23(Ljava/lang/String;Ljava/lang/Void;)Lio/vertx/core/Future; (7)
                  (Ljava/lang/Void;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Future.compose:(Ljava/util/function/Function;)Lio/vertx/core/Future;
         9: .line 712
            aload 2 /* completionHandler */
            invokeinterface io.vertx.core.Future.setHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
        10: .line 713
            return
        end local 4 // io.vertx.core.Promise haFuture
        end local 3 // io.vertx.core.impl.HAManager haManager
        end local 2 // io.vertx.core.Handler completionHandler
        end local 1 // java.lang.String deploymentID
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   11     0               this  Lio/vertx/core/impl/VertxImpl;
            0   11     1       deploymentID  Ljava/lang/String;
            0   11     2  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            1   11     3          haManager  Lio/vertx/core/impl/HAManager;
            2   11     4           haFuture  Lio/vertx/core/Promise<Ljava/lang/Void;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
    MethodParameters:
                   Name  Flags
      deploymentID       
      completionHandler  

  public java.util.Set<java.lang.String> deploymentIDs();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 717
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            invokevirtual io.vertx.core.impl.DeploymentManager.deployments:()Ljava/util/Set;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;
    Signature: ()Ljava/util/Set<Ljava/lang/String;>;

  public void registerVerticleFactory(io.vertx.core.spi.VerticleFactory);
    descriptor: (Lio/vertx/core/spi/VerticleFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.spi.VerticleFactory factory
         0: .line 722
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            aload 1 /* factory */
            invokevirtual io.vertx.core.impl.DeploymentManager.registerVerticleFactory:(Lio/vertx/core/spi/VerticleFactory;)V
         1: .line 723
            return
        end local 1 // io.vertx.core.spi.VerticleFactory factory
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  factory  Lio/vertx/core/spi/VerticleFactory;
    MethodParameters:
         Name  Flags
      factory  

  public void unregisterVerticleFactory(io.vertx.core.spi.VerticleFactory);
    descriptor: (Lio/vertx/core/spi/VerticleFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.spi.VerticleFactory factory
         0: .line 727
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            aload 1 /* factory */
            invokevirtual io.vertx.core.impl.DeploymentManager.unregisterVerticleFactory:(Lio/vertx/core/spi/VerticleFactory;)V
         1: .line 728
            return
        end local 1 // io.vertx.core.spi.VerticleFactory factory
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  factory  Lio/vertx/core/spi/VerticleFactory;
    MethodParameters:
         Name  Flags
      factory  

  public java.util.Set<io.vertx.core.spi.VerticleFactory> verticleFactories();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 732
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            invokevirtual io.vertx.core.impl.DeploymentManager.verticleFactories:()Ljava/util/Set;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;
    Signature: ()Ljava/util/Set<Lio/vertx/core/spi/VerticleFactory;>;

  public <T> void executeBlockingInternal(io.vertx.core.Handler<io.vertx.core.Promise<T>>, io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler blockingCodeHandler
        start local 2 // io.vertx.core.Handler resultHandler
         0: .line 737
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.getOrCreateContext:()Lio/vertx/core/impl/ContextImpl;
            astore 3 /* context */
        start local 3 // io.vertx.core.impl.ContextImpl context
         1: .line 739
            aload 3 /* context */
            aload 1 /* blockingCodeHandler */
            aload 2 /* resultHandler */
            invokevirtual io.vertx.core.impl.ContextImpl.executeBlockingInternal:(Lio/vertx/core/Handler;Lio/vertx/core/Handler;)V
         2: .line 740
            return
        end local 3 // io.vertx.core.impl.ContextImpl context
        end local 2 // io.vertx.core.Handler resultHandler
        end local 1 // io.vertx.core.Handler blockingCodeHandler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    3     0                 this  Lio/vertx/core/impl/VertxImpl;
            0    3     1  blockingCodeHandler  Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;
            0    3     2        resultHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TT;>;>;
            1    3     3              context  Lio/vertx/core/impl/ContextImpl;
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TT;>;>;)V
    MethodParameters:
                     Name  Flags
      blockingCodeHandler  
      resultHandler        

  public <T> void executeBlocking(io.vertx.core.Handler<io.vertx.core.Promise<T>>, boolean, io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>);
    descriptor: (Lio/vertx/core/Handler;ZLio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler blockingCodeHandler
        start local 2 // boolean ordered
        start local 3 // io.vertx.core.Handler asyncResultHandler
         0: .line 745
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.getOrCreateContext:()Lio/vertx/core/impl/ContextImpl;
            astore 4 /* context */
        start local 4 // io.vertx.core.impl.ContextImpl context
         1: .line 746
            aload 4 /* context */
            aload 1 /* blockingCodeHandler */
            iload 2 /* ordered */
            aload 3 /* asyncResultHandler */
            invokevirtual io.vertx.core.impl.ContextImpl.executeBlocking:(Lio/vertx/core/Handler;ZLio/vertx/core/Handler;)V
         2: .line 747
            return
        end local 4 // io.vertx.core.impl.ContextImpl context
        end local 3 // io.vertx.core.Handler asyncResultHandler
        end local 2 // boolean ordered
        end local 1 // io.vertx.core.Handler blockingCodeHandler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    3     0                 this  Lio/vertx/core/impl/VertxImpl;
            0    3     1  blockingCodeHandler  Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;
            0    3     2              ordered  Z
            0    3     3   asyncResultHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TT;>;>;
            1    3     4              context  Lio/vertx/core/impl/ContextImpl;
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;ZLio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TT;>;>;)V
    MethodParameters:
                     Name  Flags
      blockingCodeHandler  
      ordered              
      asyncResultHandler   

  public <T> void executeBlocking(io.vertx.core.Handler<io.vertx.core.Promise<T>>, io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler blockingCodeHandler
        start local 2 // io.vertx.core.Handler asyncResultHandler
         0: .line 752
            aload 0 /* this */
            aload 1 /* blockingCodeHandler */
            iconst_1
            aload 2 /* asyncResultHandler */
            invokevirtual io.vertx.core.impl.VertxImpl.executeBlocking:(Lio/vertx/core/Handler;ZLio/vertx/core/Handler;)V
         1: .line 753
            return
        end local 2 // io.vertx.core.Handler asyncResultHandler
        end local 1 // io.vertx.core.Handler blockingCodeHandler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    2     0                 this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  blockingCodeHandler  Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;
            0    2     2   asyncResultHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TT;>;>;
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/Handler<Lio/vertx/core/Promise<TT;>;>;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TT;>;>;)V
    MethodParameters:
                     Name  Flags
      blockingCodeHandler  
      asyncResultHandler   

  public boolean isClustered();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 757
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.netty.channel.EventLoopGroup nettyEventLoopGroup();
    descriptor: ()Lio/netty/channel/EventLoopGroup;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 762
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.eventLoopGroup:Lio/netty/channel/EventLoopGroup;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public void simulateKill();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 767
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            ifnull 2
         1: .line 768
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            invokevirtual io.vertx.core.impl.HAManager.simulateKill:()V
         2: .line 770
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.impl.Deployment getDeployment(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/core/impl/Deployment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String deploymentID
         0: .line 774
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            aload 1 /* deploymentID */
            invokevirtual io.vertx.core.impl.DeploymentManager.getDeployment:(Ljava/lang/String;)Lio/vertx/core/impl/Deployment;
            areturn
        end local 1 // java.lang.String deploymentID
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  deploymentID  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      deploymentID  

  public synchronized void failoverCompleteHandler(io.vertx.core.impl.FailoverCompleteHandler);
    descriptor: (Lio/vertx/core/impl/FailoverCompleteHandler;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.impl.FailoverCompleteHandler failoverCompleteHandler
         0: .line 779
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            ifnull 2
         1: .line 780
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            aload 1 /* failoverCompleteHandler */
            invokevirtual io.vertx.core.impl.HAManager.setFailoverCompleteHandler:(Lio/vertx/core/impl/FailoverCompleteHandler;)V
         2: .line 782
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.impl.FailoverCompleteHandler failoverCompleteHandler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    3     0                     this  Lio/vertx/core/impl/VertxImpl;
            0    3     1  failoverCompleteHandler  Lio/vertx/core/impl/FailoverCompleteHandler;
    MethodParameters:
                         Name  Flags
      failoverCompleteHandler  

  public boolean isKilled();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 786
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            invokevirtual io.vertx.core.impl.HAManager.isKilled:()Z
            ireturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public void failDuringFailover(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // boolean fail
         0: .line 791
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            ifnull 2
         1: .line 792
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            iload 1 /* fail */
            invokevirtual io.vertx.core.impl.HAManager.failDuringFailover:(Z)V
         2: .line 794
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean fail
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/vertx/core/impl/VertxImpl;
            0    3     1  fail  Z
    MethodParameters:
      Name  Flags
      fail  

  public io.vertx.core.spi.metrics.VertxMetrics metricsSPI();
    descriptor: ()Lio/vertx/core/spi/metrics/VertxMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 798
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public java.io.File resolveFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/io/File;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String fileName
         0: .line 803
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.fileResolver:Lio/vertx/core/file/impl/FileResolver;
            aload 1 /* fileName */
            invokevirtual io.vertx.core.file.impl.FileResolver.resolveFile:(Ljava/lang/String;)Ljava/io/File;
            areturn
        end local 1 // java.lang.String fileName
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  fileName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      fileName  

  public void resolveAddress(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.net.InetAddress>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String hostname
        start local 2 // io.vertx.core.Handler resultHandler
         0: .line 808
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.addressResolver:Lio/vertx/core/impl/AddressResolver;
            aload 1 /* hostname */
            aload 2 /* resultHandler */
            invokevirtual io.vertx.core.impl.AddressResolver.resolveHostname:(Ljava/lang/String;Lio/vertx/core/Handler;)V
         1: .line 809
            return
        end local 2 // io.vertx.core.Handler resultHandler
        end local 1 // java.lang.String hostname
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lio/vertx/core/impl/VertxImpl;
            0    2     1       hostname  Ljava/lang/String;
            0    2     2  resultHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/net/InetAddress;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/net/InetAddress;>;>;)V
    MethodParameters:
               Name  Flags
      hostname       
      resultHandler  

  public io.vertx.core.impl.AddressResolver addressResolver();
    descriptor: ()Lio/vertx/core/impl/AddressResolver;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 813
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.addressResolver:Lio/vertx/core/impl/AddressResolver;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.netty.resolver.AddressResolverGroup<java.net.InetSocketAddress> nettyAddressResolverGroup();
    descriptor: ()Lio/netty/resolver/AddressResolverGroup;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 818
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.addressResolver:Lio/vertx/core/impl/AddressResolver;
            invokevirtual io.vertx.core.impl.AddressResolver.nettyAddressResolverGroup:()Lio/netty/resolver/AddressResolverGroup;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;
    Signature: ()Lio/netty/resolver/AddressResolverGroup<Ljava/net/InetSocketAddress;>;

  public io.vertx.core.impl.BlockedThreadChecker blockedThreadChecker();
    descriptor: ()Lio/vertx/core/impl/BlockedThreadChecker;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 823
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.checker:Lio/vertx/core/impl/BlockedThreadChecker;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  private void deleteCacheDirAndShutdown(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler completionHandler
         0: .line 828
            aload 0 /* this */
            aload 0 /* this */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;)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
                  io/vertx/core/impl/VertxImpl.lambda$24(Lio/vertx/core/Promise;)V (7)
                  (Lio/vertx/core/Promise;)V
         1: .line 835
            aload 0 /* this */
            aload 1 /* completionHandler */
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$25(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
         2: .line 828
            invokevirtual io.vertx.core.impl.VertxImpl.executeBlockingInternal:(Lio/vertx/core/Handler;Lio/vertx/core/Handler;)V
         3: .line 869
            return
        end local 1 // io.vertx.core.Handler completionHandler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lio/vertx/core/impl/VertxImpl;
            0    4     1  completionHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
    MethodParameters:
                   Name  Flags
      completionHandler  

  public io.vertx.core.impl.HAManager haManager();
    descriptor: ()Lio/vertx/core/impl/HAManager;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 872
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.haManager:Lio/vertx/core/impl/HAManager;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;

  public io.vertx.core.impl.WorkerExecutorImpl createSharedWorkerExecutor(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/core/impl/WorkerExecutorImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String name
         0: .line 1075
            aload 0 /* this */
            aload 1 /* name */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.defaultWorkerPoolSize:I
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;I)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public io.vertx.core.impl.WorkerExecutorImpl createSharedWorkerExecutor(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lio/vertx/core/impl/WorkerExecutorImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String name
        start local 2 // int poolSize
         0: .line 1080
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* poolSize */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.maxWorkerExecTime:J
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;IJ)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
        end local 2 // int poolSize
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lio/vertx/core/impl/VertxImpl;
            0    1     1      name  Ljava/lang/String;
            0    1     2  poolSize  I
    MethodParameters:
          Name  Flags
      name      
      poolSize  

  public synchronized io.vertx.core.impl.WorkerExecutorImpl createSharedWorkerExecutor(java.lang.String, int, long);
    descriptor: (Ljava/lang/String;IJ)Lio/vertx/core/impl/WorkerExecutorImpl;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String name
        start local 2 // int poolSize
        start local 3 // long maxExecuteTime
         0: .line 1085
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* poolSize */
            lload 3 /* maxExecuteTime */
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;IJLjava/util/concurrent/TimeUnit;)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
        end local 3 // long maxExecuteTime
        end local 2 // int poolSize
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lio/vertx/core/impl/VertxImpl;
            0    1     1            name  Ljava/lang/String;
            0    1     2        poolSize  I
            0    1     3  maxExecuteTime  J
    MethodParameters:
                Name  Flags
      name            
      poolSize        
      maxExecuteTime  

  public synchronized io.vertx.core.impl.WorkerExecutorImpl createSharedWorkerExecutor(java.lang.String, int, long, java.util.concurrent.TimeUnit);
    descriptor: (Ljava/lang/String;IJLjava/util/concurrent/TimeUnit;)Lio/vertx/core/impl/WorkerExecutorImpl;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=9, locals=9, args_size=5
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // java.lang.String name
        start local 2 // int poolSize
        start local 3 // long maxExecuteTime
        start local 5 // java.util.concurrent.TimeUnit maxExecuteTimeUnit
         0: .line 1090
            iload 2 /* poolSize */
            iconst_1
            if_icmpge 2
         1: .line 1091
            new java.lang.IllegalArgumentException
            dup
            ldc "poolSize must be > 0"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 1093
      StackMap locals:
      StackMap stack:
            lload 3 /* maxExecuteTime */
            lconst_1
            lcmp
            ifge 4
         3: .line 1094
            new java.lang.IllegalArgumentException
            dup
            ldc "maxExecuteTime must be > 0"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 1096
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.namedWorkerPools:Ljava/util/Map;
            aload 1 /* name */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast io.vertx.core.impl.VertxImpl$SharedWorkerPool
            astore 6 /* sharedWorkerPool */
        start local 6 // io.vertx.core.impl.VertxImpl$SharedWorkerPool sharedWorkerPool
         5: .line 1097
            aload 6 /* sharedWorkerPool */
            ifnonnull 12
         6: .line 1098
            iload 2 /* poolSize */
            new io.vertx.core.impl.VertxThreadFactory
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "-"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.checker:Lio/vertx/core/impl/BlockedThreadChecker;
            iconst_1
            lload 3 /* maxExecuteTime */
            aload 5 /* maxExecuteTimeUnit */
            invokespecial io.vertx.core.impl.VertxThreadFactory.<init>:(Ljava/lang/String;Lio/vertx/core/impl/BlockedThreadChecker;ZJLjava/util/concurrent/TimeUnit;)V
            invokestatic java.util.concurrent.Executors.newFixedThreadPool:(ILjava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService;
            astore 7 /* workerExec */
        start local 7 // java.util.concurrent.ExecutorService workerExec
         7: .line 1099
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            ifnull 8
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            ldc "worker"
            aload 1 /* name */
            iload 2 /* poolSize */
            invokeinterface io.vertx.core.spi.metrics.VertxMetrics.createPoolMetrics:(Ljava/lang/String;Ljava/lang/String;I)Lio/vertx/core/spi/metrics/PoolMetrics;
            goto 9
      StackMap locals: io.vertx.core.impl.VertxImpl$SharedWorkerPool java.util.concurrent.ExecutorService
      StackMap stack:
         8: aconst_null
      StackMap locals:
      StackMap stack: io.vertx.core.spi.metrics.PoolMetrics
         9: astore 8 /* workerMetrics */
        start local 8 // io.vertx.core.spi.metrics.PoolMetrics workerMetrics
        10: .line 1100
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.namedWorkerPools:Ljava/util/Map;
            aload 1 /* name */
            new io.vertx.core.impl.VertxImpl$SharedWorkerPool
            dup
            aload 0 /* this */
            aload 1 /* name */
            aload 7 /* workerExec */
            aload 8 /* workerMetrics */
            invokespecial io.vertx.core.impl.VertxImpl$SharedWorkerPool.<init>:(Lio/vertx/core/impl/VertxImpl;Ljava/lang/String;Ljava/util/concurrent/ExecutorService;Lio/vertx/core/spi/metrics/PoolMetrics;)V
            dup
            astore 6 /* sharedWorkerPool */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 8 // io.vertx.core.spi.metrics.PoolMetrics workerMetrics
        end local 7 // java.util.concurrent.ExecutorService workerExec
        11: .line 1101
            goto 13
        12: .line 1102
      StackMap locals:
      StackMap stack:
            aload 6 /* sharedWorkerPool */
            dup
            getfield io.vertx.core.impl.VertxImpl$SharedWorkerPool.refCount:I
            iconst_1
            iadd
            putfield io.vertx.core.impl.VertxImpl$SharedWorkerPool.refCount:I
        13: .line 1104
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.getOrCreateContext:()Lio/vertx/core/impl/ContextImpl;
            astore 7 /* context */
        start local 7 // io.vertx.core.impl.ContextImpl context
        14: .line 1105
            new io.vertx.core.impl.WorkerExecutorImpl
            dup
            aload 7 /* context */
            aload 6 /* sharedWorkerPool */
            invokespecial io.vertx.core.impl.WorkerExecutorImpl.<init>:(Lio/vertx/core/Context;Lio/vertx/core/impl/VertxImpl$SharedWorkerPool;)V
            astore 8 /* namedExec */
        start local 8 // io.vertx.core.impl.WorkerExecutorImpl namedExec
        15: .line 1106
            aload 7 /* context */
            aload 8 /* namedExec */
            invokevirtual io.vertx.core.impl.ContextImpl.addCloseHook:(Lio/vertx/core/Closeable;)V
        16: .line 1107
            aload 8 /* namedExec */
            areturn
        end local 8 // io.vertx.core.impl.WorkerExecutorImpl namedExec
        end local 7 // io.vertx.core.impl.ContextImpl context
        end local 6 // io.vertx.core.impl.VertxImpl$SharedWorkerPool sharedWorkerPool
        end local 5 // java.util.concurrent.TimeUnit maxExecuteTimeUnit
        end local 3 // long maxExecuteTime
        end local 2 // int poolSize
        end local 1 // java.lang.String name
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   17     0                this  Lio/vertx/core/impl/VertxImpl;
            0   17     1                name  Ljava/lang/String;
            0   17     2            poolSize  I
            0   17     3      maxExecuteTime  J
            0   17     5  maxExecuteTimeUnit  Ljava/util/concurrent/TimeUnit;
            5   17     6    sharedWorkerPool  Lio/vertx/core/impl/VertxImpl$SharedWorkerPool;
            7   11     7          workerExec  Ljava/util/concurrent/ExecutorService;
           10   11     8       workerMetrics  Lio/vertx/core/spi/metrics/PoolMetrics;
           14   17     7             context  Lio/vertx/core/impl/ContextImpl;
           15   17     8           namedExec  Lio/vertx/core/impl/WorkerExecutorImpl;
    MethodParameters:
                    Name  Flags
      name                
      poolSize            
      maxExecuteTime      
      maxExecuteTimeUnit  

  public io.vertx.core.Vertx exceptionHandler(io.vertx.core.Handler<java.lang.Throwable>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/core/Vertx;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 1112
            aload 0 /* this */
            aload 1 /* handler */
            putfield io.vertx.core.impl.VertxImpl.exceptionHandler:Lio/vertx/core/Handler;
         1: .line 1113
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  handler  Lio/vertx/core/Handler<Ljava/lang/Throwable;>;
    Signature: (Lio/vertx/core/Handler<Ljava/lang/Throwable;>;)Lio/vertx/core/Vertx;
    MethodParameters:
         Name  Flags
      handler  

  public io.vertx.core.Handler<java.lang.Throwable> exceptionHandler();
    descriptor: ()Lio/vertx/core/Handler;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.impl.VertxImpl this
         0: .line 1118
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.exceptionHandler:Lio/vertx/core/Handler;
            areturn
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/impl/VertxImpl;
    Signature: ()Lio/vertx/core/Handler<Ljava/lang/Throwable;>;

  public void addCloseHook(io.vertx.core.Closeable);
    descriptor: (Lio/vertx/core/Closeable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Closeable hook
         0: .line 1123
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.closeHooks:Lio/vertx/core/impl/CloseHooks;
            aload 1 /* hook */
            invokevirtual io.vertx.core.impl.CloseHooks.add:(Lio/vertx/core/Closeable;)V
         1: .line 1124
            return
        end local 1 // io.vertx.core.Closeable hook
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  hook  Lio/vertx/core/Closeable;
    MethodParameters:
      Name  Flags
      hook  

  public void removeCloseHook(io.vertx.core.Closeable);
    descriptor: (Lio/vertx/core/Closeable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Closeable hook
         0: .line 1128
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.closeHooks:Lio/vertx/core/impl/CloseHooks;
            aload 1 /* hook */
            invokevirtual io.vertx.core.impl.CloseHooks.remove:(Lio/vertx/core/Closeable;)Z
            pop
         1: .line 1129
            return
        end local 1 // io.vertx.core.Closeable hook
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;
            0    2     1  hook  Lio/vertx/core/Closeable;
    MethodParameters:
      Name  Flags
      hook  

  public io.vertx.core.impl.ContextInternal getContext();
    descriptor: ()Lio/vertx/core/impl/ContextInternal;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual io.vertx.core.impl.VertxImpl.getContext:()Lio/vertx/core/impl/ContextImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.WorkerExecutor createSharedWorkerExecutor(java.lang.String, int, long, java.util.concurrent.TimeUnit);
    descriptor: (Ljava/lang/String;IJLjava/util/concurrent/TimeUnit;)Lio/vertx/core/WorkerExecutor;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=5
         0: .line 1
            aload 0
            aload 1
            iload 2
            lload 3
            aload 5
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;IJLjava/util/concurrent/TimeUnit;)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.impl.WorkerExecutorInternal createSharedWorkerExecutor(java.lang.String, int, long, java.util.concurrent.TimeUnit);
    descriptor: (Ljava/lang/String;IJLjava/util/concurrent/TimeUnit;)Lio/vertx/core/impl/WorkerExecutorInternal;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=5
         0: .line 1
            aload 0
            aload 1
            iload 2
            lload 3
            aload 5
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;IJLjava/util/concurrent/TimeUnit;)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.WorkerExecutor createSharedWorkerExecutor(java.lang.String, int, long);
    descriptor: (Ljava/lang/String;IJ)Lio/vertx/core/WorkerExecutor;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=4
         0: .line 1
            aload 0
            aload 1
            iload 2
            lload 3
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;IJ)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.impl.WorkerExecutorInternal createSharedWorkerExecutor(java.lang.String, int, long);
    descriptor: (Ljava/lang/String;IJ)Lio/vertx/core/impl/WorkerExecutorInternal;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=4
         0: .line 1
            aload 0
            aload 1
            iload 2
            lload 3
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;IJ)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.WorkerExecutor createSharedWorkerExecutor(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lio/vertx/core/WorkerExecutor;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            iload 2
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;I)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.impl.WorkerExecutorInternal createSharedWorkerExecutor(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Lio/vertx/core/impl/WorkerExecutorInternal;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            iload 2
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;I)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.WorkerExecutor createSharedWorkerExecutor(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/core/WorkerExecutor;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.impl.WorkerExecutorInternal createSharedWorkerExecutor(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/core/impl/WorkerExecutorInternal;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual io.vertx.core.impl.VertxImpl.createSharedWorkerExecutor:(Ljava/lang/String;)Lio/vertx/core/impl/WorkerExecutorImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.impl.ContextInternal createEventLoopContext(io.netty.channel.EventLoop, io.vertx.core.impl.WorkerPool, java.lang.ClassLoader);
    descriptor: (Lio/netty/channel/EventLoop;Lio/vertx/core/impl/WorkerPool;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/ContextInternal;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
         0: .line 1
            aload 0
            aload 1
            aload 2
            aload 3
            invokevirtual io.vertx.core.impl.VertxImpl.createEventLoopContext:(Lio/netty/channel/EventLoop;Lio/vertx/core/impl/WorkerPool;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/EventLoopContext;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.impl.ContextInternal createEventLoopContext(java.lang.String, io.vertx.core.impl.WorkerPool, io.vertx.core.json.JsonObject, java.lang.ClassLoader);
    descriptor: (Ljava/lang/String;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/ContextInternal;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=5, locals=5, args_size=5
         0: .line 1
            aload 0
            aload 1
            aload 2
            aload 3
            aload 4
            invokevirtual io.vertx.core.impl.VertxImpl.createEventLoopContext:(Ljava/lang/String;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/EventLoopContext;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.impl.ContextInternal createWorkerContext(boolean, java.lang.String, io.vertx.core.impl.WorkerPool, io.vertx.core.json.JsonObject, java.lang.ClassLoader);
    descriptor: (ZLjava/lang/String;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/ContextInternal;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=6
         0: .line 1
            aload 0
            iload 1
            aload 2
            aload 3
            aload 4
            aload 5
            invokevirtual io.vertx.core.impl.VertxImpl.createWorkerContext:(ZLjava/lang/String;Lio/vertx/core/impl/WorkerPool;Lio/vertx/core/json/JsonObject;Ljava/lang/ClassLoader;)Lio/vertx/core/impl/ContextImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.Context getOrCreateContext();
    descriptor: ()Lio/vertx/core/Context;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual io.vertx.core.impl.VertxImpl.getOrCreateContext:()Lio/vertx/core/impl/ContextImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public io.vertx.core.impl.ContextInternal getOrCreateContext();
    descriptor: ()Lio/vertx/core/impl/ContextInternal;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual io.vertx.core.impl.VertxImpl.getOrCreateContext:()Lio/vertx/core/impl/ContextImpl;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  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=0, locals=1, args_size=1
        start local 0 // io.vertx.core.AsyncResult ar
         0: .line 180
            return
        end local 0 // io.vertx.core.AsyncResult ar
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private void lambda$1(io.vertx.core.VertxOptions, io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 3 // io.vertx.core.AsyncResult ar
         0: .line 189
            aload 3 /* ar */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 3
         1: .line 190
            aload 0 /* this */
            aload 1
            aload 2
            invokevirtual io.vertx.core.impl.VertxImpl.createHaManager:(Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;)V
         2: .line 191
            goto 5
         3: .line 192
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
            ldc "Failed to join cluster"
            aload 3 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual io.vertx.core.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         4: .line 193
            aload 2
            aload 3 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         5: .line 195
      StackMap locals:
      StackMap stack:
            return
        end local 3 // io.vertx.core.AsyncResult ar
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lio/vertx/core/impl/VertxImpl;
            0    6     3    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private void lambda$2(io.vertx.core.Promise);
    descriptor: (Lio/vertx/core/Promise;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Promise fut
         0: .line 200
            aload 1 /* fut */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            ldc "__vertx.haInfo"
            invokeinterface io.vertx.core.spi.cluster.ClusterManager.getSyncMap:(Ljava/lang/String;)Ljava/util/Map;
            invokeinterface io.vertx.core.Promise.complete:(Ljava/lang/Object;)V
         1: .line 201
            return
        end local 1 // io.vertx.core.Promise fut
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;
            0    2     1   fut  Lio/vertx/core/Promise<Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;>;

  private void lambda$3(io.vertx.core.VertxOptions, io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/VertxOptions;Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=10, locals=5, args_size=4
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 3 // io.vertx.core.AsyncResult ar
         0: .line 202
            aload 3 /* ar */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 5
         1: .line 203
            aload 3 /* ar */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            checkcast java.util.Map
            astore 4 /* clusterMap */
        start local 4 // java.util.Map clusterMap
         2: .line 204
            aload 0 /* this */
            new io.vertx.core.impl.HAManager
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
            aload 4 /* clusterMap */
            aload 1
            invokevirtual io.vertx.core.VertxOptions.getQuorumSize:()I
            aload 1
            invokevirtual io.vertx.core.VertxOptions.getHAGroup:()Ljava/lang/String;
            aload 1
            invokevirtual io.vertx.core.VertxOptions.isHAEnabled:()Z
            invokespecial io.vertx.core.impl.HAManager.<init>:(Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/impl/DeploymentManager;Lio/vertx/core/spi/cluster/ClusterManager;Ljava/util/Map;ILjava/lang/String;Z)V
            putfield io.vertx.core.impl.VertxImpl.haManager:Lio/vertx/core/impl/HAManager;
         3: .line 205
            aload 0 /* this */
            aload 2
            invokevirtual io.vertx.core.impl.VertxImpl.startEventBus:(Lio/vertx/core/Handler;)V
        end local 4 // java.util.Map clusterMap
         4: .line 206
            goto 7
         5: .line 207
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
            ldc "Failed to start HAManager"
            aload 3 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual io.vertx.core.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         6: .line 208
            aload 2
            aload 3 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         7: .line 210
      StackMap locals:
      StackMap stack:
            return
        end local 3 // io.vertx.core.AsyncResult ar
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lio/vertx/core/impl/VertxImpl;
            0    8     3          ar  Lio/vertx/core/AsyncResult<Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;>;
            2    4     4  clusterMap  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  private void lambda$4(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // io.vertx.core.AsyncResult ar
         0: .line 215
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 3
         1: .line 216
            aload 0 /* this */
            aload 1
            invokevirtual io.vertx.core.impl.VertxImpl.initializeHaManager:(Lio/vertx/core/Handler;)V
         2: .line 217
            goto 5
         3: .line 218
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
            ldc "Failed to start event bus"
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual io.vertx.core.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         4: .line 219
            aload 1
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         5: .line 221
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.vertx.core.AsyncResult ar
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lio/vertx/core/impl/VertxImpl;
            0    6     2    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private void lambda$5(io.vertx.core.Promise);
    descriptor: (Lio/vertx/core/Promise;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Promise fut
         0: .line 229
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.haManager:Lio/vertx/core/impl/HAManager;
            invokevirtual io.vertx.core.impl.HAManager.init:()V
         1: .line 230
            aload 1 /* fut */
            invokeinterface io.vertx.core.Promise.complete:()V
         2: .line 231
            return
        end local 1 // io.vertx.core.Promise fut
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/vertx/core/impl/VertxImpl;
            0    3     1   fut  Lio/vertx/core/Promise<Ljava/lang/Object;>;

  private void lambda$6(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // io.vertx.core.AsyncResult ar
         0: .line 232
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 5
         1: .line 233
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            ifnull 3
         2: .line 234
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.metrics:Lio/vertx/core/spi/metrics/VertxMetrics;
            aload 0 /* this */
            invokeinterface io.vertx.core.spi.metrics.VertxMetrics.vertxCreated:(Lio/vertx/core/Vertx;)V
         3: .line 236
      StackMap locals:
      StackMap stack:
            aload 1
            aload 0 /* this */
            invokestatic io.vertx.core.Future.succeededFuture:(Ljava/lang/Object;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         4: .line 237
            goto 7
         5: .line 238
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
            ldc "Failed to initialize HAManager"
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual io.vertx.core.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         6: .line 239
            aload 1
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         7: .line 241
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.vertx.core.AsyncResult ar
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lio/vertx/core/impl/VertxImpl;
            0    8     2    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Object;>;

  private void lambda$7(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // io.vertx.core.AsyncResult ar
         0: .line 521
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.failed:()Z
            ifeq 2
         1: .line 522
            getstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
            ldc "Failed to leave cluster"
            aload 2 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual io.vertx.core.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         2: .line 524
      StackMap locals:
      StackMap stack:
            aload 1
            ifnull 4
         3: .line 525
            aload 0 /* this */
            aload 1
            invokedynamic handle(Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$8(Lio/vertx/core/Handler;Ljava/lang/Void;)V (6)
                  (Ljava/lang/Void;)V
            invokevirtual io.vertx.core.impl.VertxImpl.runOnContext:(Lio/vertx/core/Handler;)V
         4: .line 527
      StackMap locals:
      StackMap stack:
            return
        end local 2 // io.vertx.core.AsyncResult ar
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/core/impl/VertxImpl;
            0    5     2    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private static void lambda$9(io.vertx.core.Handler, java.lang.Void);
    descriptor: (Lio/vertx/core/Handler;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 529
            aload 0
            invokestatic io.vertx.core.Future.succeededFuture:()Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
            return
        end local 1 // java.lang.Void v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     v  Ljava/lang/Void;

  private void lambda$10(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // io.vertx.core.AsyncResult ar
         0: .line 545
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            aload 0 /* this */
            aload 1
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$11(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            invokevirtual io.vertx.core.impl.DeploymentManager.undeployAll:(Lio/vertx/core/Handler;)V
         1: .line 593
            return
        end local 2 // io.vertx.core.AsyncResult ar
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;
            0    2     2    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private static io.vertx.core.Verticle lambda$18(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lio/vertx/core/Verticle;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=1
         0: .line 620
            aload 0
            invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
            checkcast io.vertx.core.Verticle
         1: areturn
         2: .line 621
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         3: .line 622
            new java.lang.RuntimeException
            dup
            aload 1 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.lang.Exception e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            3    4     1     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception

  private static io.vertx.core.Verticle lambda$19(io.vertx.core.Verticle);
    descriptor: (Lio/vertx/core/Verticle;)Lio/vertx/core/Verticle;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 637
            aload 0
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static io.vertx.core.Verticle lambda$20(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Lio/vertx/core/Verticle;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=1
         0: .line 644
            aload 0
            invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
            checkcast io.vertx.core.Verticle
         1: areturn
         2: .line 645
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         3: .line 646
            new java.lang.RuntimeException
            dup
            aload 1 /* e */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 1 // java.lang.Exception e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            3    4     1     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception

  private static void lambda$21(io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // io.vertx.core.AsyncResult res
         0: .line 693
            return
        end local 0 // io.vertx.core.AsyncResult res
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   res  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private static void lambda$22(io.vertx.core.impl.HAManager, java.lang.String, io.vertx.core.Promise);
    descriptor: (Lio/vertx/core/impl/HAManager;Ljava/lang/String;Lio/vertx/core/Promise;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 2 // io.vertx.core.Promise fut
         0: .line 702
            aload 0
            aload 1
            invokevirtual io.vertx.core.impl.HAManager.removeFromHA:(Ljava/lang/String;)V
         1: .line 703
            aload 2 /* fut */
            invokeinterface io.vertx.core.Promise.complete:()V
         2: .line 704
            return
        end local 2 // io.vertx.core.Promise fut
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     2   fut  Lio/vertx/core/Promise<Ljava/lang/Void;>;

  private io.vertx.core.Future lambda$23(java.lang.String, java.lang.Void);
    descriptor: (Ljava/lang/String;Ljava/lang/Void;)Lio/vertx/core/Future;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // java.lang.Void v
         0: .line 709
            invokestatic io.vertx.core.Promise.promise:()Lio/vertx/core/Promise;
            astore 3 /* deploymentFuture */
        start local 3 // io.vertx.core.Promise deploymentFuture
         1: .line 710
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
            aload 1
            aload 3 /* deploymentFuture */
            invokevirtual io.vertx.core.impl.DeploymentManager.undeployVerticle:(Ljava/lang/String;Lio/vertx/core/Handler;)V
         2: .line 711
            aload 3 /* deploymentFuture */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            areturn
        end local 3 // io.vertx.core.Promise deploymentFuture
        end local 2 // java.lang.Void v
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lio/vertx/core/impl/VertxImpl;
            0    3     2                 v  Ljava/lang/Void;
            1    3     3  deploymentFuture  Lio/vertx/core/Promise<Ljava/lang/Void;>;

  private void lambda$24(io.vertx.core.Promise);
    descriptor: (Lio/vertx/core/Promise;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 1 // io.vertx.core.Promise fut
         0: .line 830
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.fileResolver:Lio/vertx/core/file/impl/FileResolver;
            invokevirtual io.vertx.core.file.impl.FileResolver.close:()V
         1: .line 831
            aload 1 /* fut */
            invokeinterface io.vertx.core.Promise.complete:()V
         2: .line 832
            goto 5
      StackMap locals:
      StackMap stack: java.io.IOException
         3: astore 2 /* e */
        start local 2 // java.io.IOException e
         4: .line 833
            aload 1 /* fut */
            aload 2 /* e */
            invokeinterface io.vertx.core.Promise.tryFail:(Ljava/lang/Throwable;)Z
            pop
        end local 2 // java.io.IOException e
         5: .line 835
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.Promise fut
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lio/vertx/core/impl/VertxImpl;
            0    6     1   fut  Lio/vertx/core/Promise<Ljava/lang/Object;>;
            4    5     2     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.io.IOException

  private void lambda$25(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // io.vertx.core.AsyncResult ar
         0: .line 837
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.workerPool:Lio/vertx/core/impl/WorkerPool;
            invokevirtual io.vertx.core.impl.WorkerPool.close:()V
         1: .line 838
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.internalBlockingPool:Lio/vertx/core/impl/WorkerPool;
            invokevirtual io.vertx.core.impl.WorkerPool.close:()V
         2: .line 839
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.namedWorkerPools:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            invokedynamic accept()Ljava/util/function/Consumer;
              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
                  io/vertx/core/impl/WorkerPool.close()V (5)
                  (Lio/vertx/core/impl/VertxImpl$SharedWorkerPool;)V
            invokevirtual java.util.ArrayList.forEach:(Ljava/util/function/Consumer;)V
         3: .line 841
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.acceptorEventLoopGroup:Lio/netty/channel/EventLoopGroup;
            lconst_0
            ldc 10
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface io.netty.channel.EventLoopGroup.shutdownGracefully:(JJLjava/util/concurrent/TimeUnit;)Lio/netty/util/concurrent/Future;
            new io.vertx.core.impl.VertxImpl$3
            dup
            aload 0 /* this */
            aload 1
            invokespecial io.vertx.core.impl.VertxImpl$3.<init>:(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)V
            invokeinterface io.netty.util.concurrent.Future.addListener:(Lio/netty/util/concurrent/GenericFutureListener;)Lio/netty/util/concurrent/Future;
            pop
         4: .line 868
            return
        end local 2 // io.vertx.core.AsyncResult ar
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/core/impl/VertxImpl;
            0    5     2    ar  Lio/vertx/core/AsyncResult<Ljava/lang/Object;>;

  private static void lambda$8(io.vertx.core.Handler, java.lang.Void);
    descriptor: (Lio/vertx/core/Handler;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 525
            aload 0
            invokestatic io.vertx.core.Future.succeededFuture:()Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
            return
        end local 1 // java.lang.Void v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     v  Ljava/lang/Void;

  private void lambda$11(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // io.vertx.core.AsyncResult ar1
         0: .line 546
            aload 0 /* this */
            invokevirtual io.vertx.core.impl.VertxImpl.haManager:()Lio/vertx/core/impl/HAManager;
            astore 3 /* haManager */
        start local 3 // io.vertx.core.impl.HAManager haManager
         1: .line 547
            invokestatic io.vertx.core.Promise.promise:()Lio/vertx/core/Promise;
            astore 4 /* haPromise */
        start local 4 // io.vertx.core.Promise haPromise
         2: .line 548
            aload 3 /* haManager */
            ifnull 7
         3: .line 549
            aload 0 /* this */
            aload 3 /* haManager */
            invokedynamic handle(Lio/vertx/core/impl/HAManager;)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
                  io/vertx/core/impl/VertxImpl.lambda$12(Lio/vertx/core/impl/HAManager;Lio/vertx/core/Promise;)V (6)
                  (Lio/vertx/core/Promise;)V
         4: .line 552
            iconst_0
            aload 4 /* haPromise */
         5: .line 549
            invokevirtual io.vertx.core.impl.VertxImpl.executeBlocking:(Lio/vertx/core/Handler;ZLio/vertx/core/Handler;)V
         6: .line 553
            goto 8
         7: .line 554
      StackMap locals: io.vertx.core.impl.HAManager io.vertx.core.Promise
      StackMap stack:
            aload 4 /* haPromise */
            invokeinterface io.vertx.core.Promise.complete:()V
         8: .line 556
      StackMap locals:
      StackMap stack:
            aload 4 /* haPromise */
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            aload 0 /* this */
            aload 1
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$13(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.core.Future.setHandler:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
        end local 4 // io.vertx.core.Promise haPromise
        end local 3 // io.vertx.core.impl.HAManager haManager
         9: .line 592
            return
        end local 2 // io.vertx.core.AsyncResult ar1
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lio/vertx/core/impl/VertxImpl;
            0   10     2        ar1  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;
            1    9     3  haManager  Lio/vertx/core/impl/HAManager;
            2    9     4  haPromise  Lio/vertx/core/Promise<Ljava/lang/Void;>;

  private static void lambda$12(io.vertx.core.impl.HAManager, io.vertx.core.Promise);
    descriptor: (Lio/vertx/core/impl/HAManager;Lio/vertx/core/Promise;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=2, args_size=2
        start local 1 // io.vertx.core.Promise fut
         0: .line 550
            aload 0
            invokevirtual io.vertx.core.impl.HAManager.stop:()V
         1: .line 551
            aload 1 /* fut */
            invokeinterface io.vertx.core.Promise.complete:()V
         2: .line 552
            return
        end local 1 // io.vertx.core.Promise fut
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     1   fut  Lio/vertx/core/Promise<Ljava/lang/Void;>;

  private void lambda$13(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // io.vertx.core.AsyncResult ar2
         0: .line 557
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.addressResolver:Lio/vertx/core/impl/AddressResolver;
            aload 0 /* this */
            aload 1
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$14(Lio/vertx/core/Handler;Ljava/lang/Void;)V (7)
                  (Ljava/lang/Void;)V
            invokevirtual io.vertx.core.impl.AddressResolver.close:(Lio/vertx/core/Handler;)V
         1: .line 591
            return
        end local 2 // io.vertx.core.AsyncResult ar2
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;
            0    2     2   ar2  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private void lambda$14(io.vertx.core.Handler, java.lang.Void);
    descriptor: (Lio/vertx/core/Handler;Ljava/lang/Void;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // java.lang.Void ar3
         0: .line 558
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.eventBus:Lio/vertx/core/eventbus/EventBus;
            aload 0 /* this */
            aload 1
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$15(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.core.eventbus.EventBus.close:(Lio/vertx/core/Handler;)V
         1: .line 590
            return
        end local 2 // java.lang.Void ar3
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;
            0    2     2   ar3  Ljava/lang/Void;

  private void lambda$15(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // io.vertx.core.AsyncResult ar4
         0: .line 559
            aload 0 /* this */
            aload 0 /* this */
            aload 1
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Lio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$16(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            invokevirtual io.vertx.core.impl.VertxImpl.closeClusterManager:(Lio/vertx/core/Handler;)V
         1: .line 589
            return
        end local 2 // io.vertx.core.AsyncResult ar4
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/core/impl/VertxImpl;
            0    2     2   ar4  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;

  private void lambda$16(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=10, args_size=3
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 2 // io.vertx.core.AsyncResult ar5
         0: .line 561
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.sharedHttpServers:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            astore 3 /* httpServers */
        start local 3 // java.util.Set httpServers
         1: .line 562
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.sharedNetServers:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
            astore 4 /* netServers */
        start local 4 // java.util.Set netServers
         2: .line 563
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.sharedHttpServers:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
         3: .line 564
            aload 0 /* this */
            getfield io.vertx.core.impl.VertxImpl.sharedNetServers:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
         4: .line 566
            aload 3 /* httpServers */
            invokeinterface java.util.Set.size:()I
            aload 4 /* netServers */
            invokeinterface java.util.Set.size:()I
            iadd
            istore 5 /* serverCount */
        start local 5 // int serverCount
         5: .line 568
            new java.util.concurrent.atomic.AtomicInteger
            dup
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
            astore 6 /* serverCloseCount */
        start local 6 // java.util.concurrent.atomic.AtomicInteger serverCloseCount
         6: .line 570
            aload 0 /* this */
            aload 6 /* serverCloseCount */
            iload 5 /* serverCount */
            aload 1
            invokedynamic handle(Lio/vertx/core/impl/VertxImpl;Ljava/util/concurrent/atomic/AtomicInteger;ILio/vertx/core/Handler;)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
                  io/vertx/core/impl/VertxImpl.lambda$17(Ljava/util/concurrent/atomic/AtomicInteger;ILio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
                  (Lio/vertx/core/AsyncResult;)V
            astore 7 /* serverCloseHandler */
        start local 7 // io.vertx.core.Handler serverCloseHandler
         7: .line 579
            aload 3 /* httpServers */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 9
            goto 10
      StackMap locals: io.vertx.core.impl.VertxImpl io.vertx.core.Handler io.vertx.core.AsyncResult java.util.Set java.util.Set int java.util.concurrent.atomic.AtomicInteger io.vertx.core.Handler top java.util.Iterator
      StackMap stack:
         8: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast io.vertx.core.http.impl.HttpServerImpl
            astore 8 /* server */
        start local 8 // io.vertx.core.http.impl.HttpServerImpl server
         9: .line 580
            aload 8 /* server */
            aload 7 /* serverCloseHandler */
            invokevirtual io.vertx.core.http.impl.HttpServerImpl.closeAll:(Lio/vertx/core/Handler;)V
        end local 8 // io.vertx.core.http.impl.HttpServerImpl server
        10: .line 579
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 582
            aload 4 /* netServers */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 9
            goto 14
      StackMap locals:
      StackMap stack:
        12: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast io.vertx.core.net.impl.NetServerImpl
            astore 8 /* server */
        start local 8 // io.vertx.core.net.impl.NetServerImpl server
        13: .line 583
            aload 8 /* server */
            aload 7 /* serverCloseHandler */
            invokevirtual io.vertx.core.net.impl.NetServerImpl.closeAll:(Lio/vertx/core/Handler;)V
        end local 8 // io.vertx.core.net.impl.NetServerImpl server
        14: .line 582
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        15: .line 585
            iload 5 /* serverCount */
            ifne 17
        16: .line 586
            aload 0 /* this */
            aload 1
            invokevirtual io.vertx.core.impl.VertxImpl.deleteCacheDirAndShutdown:(Lio/vertx/core/Handler;)V
        end local 7 // io.vertx.core.Handler serverCloseHandler
        end local 6 // java.util.concurrent.atomic.AtomicInteger serverCloseCount
        end local 5 // int serverCount
        end local 4 // java.util.Set netServers
        end local 3 // java.util.Set httpServers
        17: .line 588
      StackMap locals: io.vertx.core.impl.VertxImpl io.vertx.core.Handler io.vertx.core.AsyncResult
      StackMap stack:
            return
        end local 2 // io.vertx.core.AsyncResult ar5
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   18     0                this  Lio/vertx/core/impl/VertxImpl;
            0   18     2                 ar5  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;
            1   17     3         httpServers  Ljava/util/Set<Lio/vertx/core/http/impl/HttpServerImpl;>;
            2   17     4          netServers  Ljava/util/Set<Lio/vertx/core/net/impl/NetServerImpl;>;
            5   17     5         serverCount  I
            6   17     6    serverCloseCount  Ljava/util/concurrent/atomic/AtomicInteger;
            7   17     7  serverCloseHandler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            9   10     8              server  Lio/vertx/core/http/impl/HttpServerImpl;
           13   14     8              server  Lio/vertx/core/net/impl/NetServerImpl;

  private void lambda$17(java.util.concurrent.atomic.AtomicInteger, int, io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Ljava/util/concurrent/atomic/AtomicInteger;ILio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // io.vertx.core.impl.VertxImpl this
        start local 4 // io.vertx.core.AsyncResult res
         0: .line 571
            aload 4 /* res */
            invokeinterface io.vertx.core.AsyncResult.failed:()Z
            ifeq 2
         1: .line 572
            getstatic io.vertx.core.impl.VertxImpl.log:Lio/vertx/core/logging/Logger;
            ldc "Failure in shutting down server"
            aload 4 /* res */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual io.vertx.core.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
         2: .line 574
      StackMap locals:
      StackMap stack:
            aload 1
            invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
            iload 2
            if_icmpne 4
         3: .line 575
            aload 0 /* this */
            aload 3
            invokevirtual io.vertx.core.impl.VertxImpl.deleteCacheDirAndShutdown:(Lio/vertx/core/Handler;)V
         4: .line 577
      StackMap locals:
      StackMap stack:
            return
        end local 4 // io.vertx.core.AsyncResult res
        end local 0 // io.vertx.core.impl.VertxImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/core/impl/VertxImpl;
            0    5     4   res  Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;
}
SourceFile: "VertxImpl.java"
NestMembers:
  io.vertx.core.impl.VertxImpl$1  io.vertx.core.impl.VertxImpl$1$1  io.vertx.core.impl.VertxImpl$2  io.vertx.core.impl.VertxImpl$2$1  io.vertx.core.impl.VertxImpl$3  io.vertx.core.impl.VertxImpl$3$1  io.vertx.core.impl.VertxImpl$InternalTimerHandler  io.vertx.core.impl.VertxImpl$SharedWorkerPool  io.vertx.core.impl.VertxImpl$TimeoutStreamImpl
InnerClasses:
  public final Level = io.netty.util.ResourceLeakDetector$Level of io.netty.util.ResourceLeakDetector
  io.vertx.core.impl.VertxImpl$3
  private InternalTimerHandler = io.vertx.core.impl.VertxImpl$InternalTimerHandler of io.vertx.core.impl.VertxImpl
  SharedWorkerPool = io.vertx.core.impl.VertxImpl$SharedWorkerPool of io.vertx.core.impl.VertxImpl
  private TimeoutStreamImpl = io.vertx.core.impl.VertxImpl$TimeoutStreamImpl of io.vertx.core.impl.VertxImpl
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles