public class org.I0Itec.zkclient.InMemoryConnection implements org.I0Itec.zkclient.IZkConnection
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.I0Itec.zkclient.InMemoryConnection
  super_class: java.lang.Object
{
  private final java.util.concurrent.locks.Lock _lock;
    descriptor: Ljava/util/concurrent/locks/Lock;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<java.lang.String, org.I0Itec.zkclient.InMemoryConnection$DataAndVersion> _data;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lorg/I0Itec/zkclient/InMemoryConnection$DataAndVersion;>;

  private final java.util.Map<java.lang.String, java.lang.Long> _creationTime;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Long;>;

  private final java.util.List<org.apache.zookeeper.data.Id> _ids;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/zookeeper/data/Id;>;

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

  private final java.util.Set<java.lang.String> _dataWatches;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private final java.util.Set<java.lang.String> _nodeWatches;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private org.I0Itec.zkclient.InMemoryConnection$EventThread _eventThread;
    descriptor: Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
         0: .line 126
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 91
            aload 0 /* this */
            new java.util.concurrent.locks.ReentrantLock
            dup
            iconst_1
            invokespecial java.util.concurrent.locks.ReentrantLock.<init>:(Z)V
            putfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
         2: .line 92
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
         3: .line 93
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.I0Itec.zkclient.InMemoryConnection._creationTime:Ljava/util/Map;
         4: .line 94
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.I0Itec.zkclient.InMemoryConnection._ids:Ljava/util/List;
         5: .line 95
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putfield org.I0Itec.zkclient.InMemoryConnection.sequence:Ljava/util/concurrent/atomic/AtomicInteger;
         6: .line 97
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield org.I0Itec.zkclient.InMemoryConnection._dataWatches:Ljava/util/Set;
         7: .line 98
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield org.I0Itec.zkclient.InMemoryConnection._nodeWatches:Ljava/util/Set;
         8: .line 128
            aload 0 /* this */
            ldc "/"
            aconst_null
            getstatic org.apache.zookeeper.CreateMode.PERSISTENT:Lorg/apache/zookeeper/CreateMode;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.create:(Ljava/lang/String;[BLorg/apache/zookeeper/CreateMode;)Ljava/lang/String;
            pop
         9: .line 129
            goto 15
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection
      StackMap stack: org.apache.zookeeper.KeeperException
        10: astore 1 /* e */
        start local 1 // org.apache.zookeeper.KeeperException e
        11: .line 130
            aload 1 /* e */
            invokestatic org.I0Itec.zkclient.exception.ZkException.create:(Lorg/apache/zookeeper/KeeperException;)Lorg/I0Itec/zkclient/exception/ZkException;
            athrow
        end local 1 // org.apache.zookeeper.KeeperException e
        12: .line 131
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
            astore 1 /* e */
        start local 1 // java.lang.InterruptedException e
        13: .line 132
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        14: .line 133
            new org.I0Itec.zkclient.exception.ZkInterruptedException
            dup
            aload 1 /* e */
            invokespecial org.I0Itec.zkclient.exception.ZkInterruptedException.<init>:(Ljava/lang/InterruptedException;)V
            athrow
        end local 1 // java.lang.InterruptedException e
        15: .line 135
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lorg/I0Itec/zkclient/InMemoryConnection;
           11   12     1     e  Lorg/apache/zookeeper/KeeperException;
           13   15     1     e  Ljava/lang/InterruptedException;
      Exception table:
        from    to  target  type
           8     9      10  Class org.apache.zookeeper.KeeperException
           8     9      12  Class java.lang.InterruptedException

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
         0: .line 139
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lockInterruptibly:()V
         1: .line 141
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
            ifnull 9
         2: .line 142
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$EventThread.interrupt:()V
         3: .line 143
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$EventThread.join:()V
         4: .line 144
            aload 0 /* this */
            aconst_null
            putfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
         5: .line 146
            goto 9
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: astore 1
         7: .line 147
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
         8: .line 148
            aload 1
            athrow
         9: .line 147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        10: .line 149
            return
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/I0Itec/zkclient/InMemoryConnection;
      Exception table:
        from    to  target  type
           1     6       6  any
    Exceptions:
      throws java.lang.InterruptedException

  public void connect(org.apache.zookeeper.Watcher);
    descriptor: (Lorg/apache/zookeeper/Watcher;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // org.apache.zookeeper.Watcher watcher
         0: .line 153
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         1: .line 155
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
            ifnull 3
         2: .line 156
            new java.lang.IllegalStateException
            dup
            ldc "Already connected."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 158
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.I0Itec.zkclient.InMemoryConnection$EventThread
            dup
            aload 0 /* this */
            aload 1 /* watcher */
            invokespecial org.I0Itec.zkclient.InMemoryConnection$EventThread.<init>:(Lorg/I0Itec/zkclient/InMemoryConnection;Lorg/apache/zookeeper/Watcher;)V
            putfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
         4: .line 159
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$EventThread.start:()V
         5: .line 160
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
            new org.apache.zookeeper.WatchedEvent
            dup
            aconst_null
            getstatic org.apache.zookeeper.Watcher$Event$KeeperState.SyncConnected:Lorg/apache/zookeeper/Watcher$Event$KeeperState;
            aconst_null
            invokespecial org.apache.zookeeper.WatchedEvent.<init>:(Lorg/apache/zookeeper/Watcher$Event$EventType;Lorg/apache/zookeeper/Watcher$Event$KeeperState;Ljava/lang/String;)V
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$EventThread.send:(Lorg/apache/zookeeper/WatchedEvent;)V
         6: .line 161
            goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: astore 2
         8: .line 162
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
         9: .line 163
            aload 2
            athrow
        10: .line 162
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        11: .line 164
            return
        end local 1 // org.apache.zookeeper.Watcher watcher
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0   12     1  watcher  Lorg/apache/zookeeper/Watcher;
      Exception table:
        from    to  target  type
           1     7       7  any
    MethodParameters:
         Name  Flags
      watcher  

  public java.lang.String create(java.lang.String, byte[], java.util.List<org.apache.zookeeper.data.ACL>, org.apache.zookeeper.CreateMode);
    descriptor: (Ljava/lang/String;[BLjava/util/List;Lorg/apache/zookeeper/CreateMode;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=5
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // byte[] data
        start local 3 // java.util.List acl
        start local 4 // org.apache.zookeeper.CreateMode mode
         0: .line 168
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         1: .line 171
            aload 4 /* mode */
            invokevirtual org.apache.zookeeper.CreateMode.isSequential:()Z
            ifeq 4
         2: .line 172
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection.sequence:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndIncrement:()I
            istore 5 /* newSequence */
        start local 5 // int newSequence
         3: .line 173
            new java.lang.StringBuilder
            dup
            aload 1 /* path */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 5 /* newSequence */
            i2l
            bipush 10
            invokestatic org.I0Itec.zkclient.util.ZkPathUtil.leadingZeros:(JI)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* path */
        end local 5 // int newSequence
         4: .line 176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* path */
            iconst_0
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.exists:(Ljava/lang/String;Z)Z
            ifeq 6
         5: .line 177
            new org.apache.zookeeper.KeeperException$NodeExistsException
            dup
            invokespecial org.apache.zookeeper.KeeperException$NodeExistsException.<init>:()V
            athrow
         6: .line 179
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* path */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.getParentPath:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* parentPath */
        start local 5 // java.lang.String parentPath
         7: .line 180
            aload 0 /* this */
            aload 5 /* parentPath */
            iconst_4
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkACL:(Ljava/lang/String;I)V
         8: .line 182
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            new org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
            dup
            aload 2 /* data */
            iconst_0
            aload 3 /* acl */
            invokespecial org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.<init>:([BILjava/util/List;)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 183
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._creationTime:Ljava/util/Map;
            aload 1 /* path */
            invokestatic java.lang.System.currentTimeMillis:()J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 184
            aload 0 /* this */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._nodeWatches:Ljava/util/Set;
            aload 1 /* path */
            getstatic org.apache.zookeeper.Watcher$Event$EventType.NodeCreated:Lorg/apache/zookeeper/Watcher$Event$EventType;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkWatch:(Ljava/util/Set;Ljava/lang/String;Lorg/apache/zookeeper/Watcher$Event$EventType;)V
        11: .line 186
            aload 5 /* parentPath */
            ifnull 13
        12: .line 187
            aload 0 /* this */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._nodeWatches:Ljava/util/Set;
            aload 5 /* parentPath */
            getstatic org.apache.zookeeper.Watcher$Event$EventType.NodeChildrenChanged:Lorg/apache/zookeeper/Watcher$Event$EventType;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkWatch:(Ljava/util/Set;Ljava/lang/String;Lorg/apache/zookeeper/Watcher$Event$EventType;)V
        13: .line 189
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* path */
            astore 7
        14: .line 191
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        15: .line 189
            aload 7
            areturn
        end local 5 // java.lang.String parentPath
        16: .line 190
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.String byte[] java.util.List org.apache.zookeeper.CreateMode
      StackMap stack: java.lang.Throwable
            astore 6
        17: .line 191
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        18: .line 192
            aload 6
            athrow
        end local 4 // org.apache.zookeeper.CreateMode mode
        end local 3 // java.util.List acl
        end local 2 // byte[] data
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0   19     1         path  Ljava/lang/String;
            0   19     2         data  [B
            0   19     3          acl  Ljava/util/List<Lorg/apache/zookeeper/data/ACL;>;
            0   19     4         mode  Lorg/apache/zookeeper/CreateMode;
            3    4     5  newSequence  I
            7   16     5   parentPath  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1    14      16  any
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    Signature: (Ljava/lang/String;[BLjava/util/List<Lorg/apache/zookeeper/data/ACL;>;Lorg/apache/zookeeper/CreateMode;)Ljava/lang/String;
    MethodParameters:
      Name  Flags
      path  
      data  
      acl   
      mode  

  public java.lang.String create(java.lang.String, byte[], org.apache.zookeeper.CreateMode);
    descriptor: (Ljava/lang/String;[BLorg/apache/zookeeper/CreateMode;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // byte[] data
        start local 3 // org.apache.zookeeper.CreateMode mode
         0: .line 197
            aload 0 /* this */
            aload 1 /* path */
            aload 2 /* data */
            aconst_null
            aload 3 /* mode */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.create:(Ljava/lang/String;[BLjava/util/List;Lorg/apache/zookeeper/CreateMode;)Ljava/lang/String;
            areturn
        end local 3 // org.apache.zookeeper.CreateMode mode
        end local 2 // byte[] data
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    1     1  path  Ljava/lang/String;
            0    1     2  data  [B
            0    1     3  mode  Lorg/apache/zookeeper/CreateMode;
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    MethodParameters:
      Name  Flags
      path  
      data  
      mode  

  private java.lang.String getParentPath(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
         0: .line 201
            aload 1 /* path */
            ldc "/"
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            istore 2 /* lastIndexOf */
        start local 2 // int lastIndexOf
         1: .line 202
            iload 2 /* lastIndexOf */
            iconst_m1
            if_icmpeq 2
            iload 2 /* lastIndexOf */
            ifne 3
         2: .line 203
      StackMap locals: int
      StackMap stack:
            aconst_null
            areturn
         3: .line 205
      StackMap locals:
      StackMap stack:
            aload 1 /* path */
            iconst_0
            iload 2 /* lastIndexOf */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
        end local 2 // int lastIndexOf
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    4     1         path  Ljava/lang/String;
            1    4     2  lastIndexOf  I
    MethodParameters:
      Name  Flags
      path  

  public void delete(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
         0: .line 210
            aload 0 /* this */
            aload 1 /* path */
            iconst_m1
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.delete:(Ljava/lang/String;I)V
         1: .line 211
            return
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    2     1  path  Ljava/lang/String;
    Exceptions:
      throws java.lang.InterruptedException, org.apache.zookeeper.KeeperException
    MethodParameters:
      Name  Flags
      path  

  public void delete(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // int version
         0: .line 215
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         1: .line 217
            aload 0 /* this */
            aload 1 /* path */
            iconst_0
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.exists:(Ljava/lang/String;Z)Z
            ifne 3
         2: .line 218
            new org.apache.zookeeper.KeeperException$NoNodeException
            dup
            invokespecial org.apache.zookeeper.KeeperException$NoNodeException.<init>:()V
            athrow
         3: .line 220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* path */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.getParentPath:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* parentPath */
        start local 3 // java.lang.String parentPath
         4: .line 221
            aload 0 /* this */
            aload 3 /* parentPath */
            bipush 8
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkACL:(Ljava/lang/String;I)V
         5: .line 223
            iload 2 /* version */
            iconst_m1
            if_icmpeq 9
         6: .line 224
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
            astore 4 /* item */
        start local 4 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion item
         7: .line 225
            aload 4 /* item */
            getfield org.I0Itec.zkclient.InMemoryConnection$DataAndVersion._version:I
            iload 2 /* version */
            if_icmpeq 9
         8: .line 226
            getstatic org.apache.zookeeper.KeeperException$Code.BADVERSION:Lorg/apache/zookeeper/KeeperException$Code;
            invokestatic org.apache.zookeeper.KeeperException.create:(Lorg/apache/zookeeper/KeeperException$Code;)Lorg/apache/zookeeper/KeeperException;
            athrow
        end local 4 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion item
         9: .line 229
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 230
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._creationTime:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 231
            aload 0 /* this */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._nodeWatches:Ljava/util/Set;
            aload 1 /* path */
            getstatic org.apache.zookeeper.Watcher$Event$EventType.NodeDeleted:Lorg/apache/zookeeper/Watcher$Event$EventType;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkWatch:(Ljava/util/Set;Ljava/lang/String;Lorg/apache/zookeeper/Watcher$Event$EventType;)V
        12: .line 232
            aload 3 /* parentPath */
            ifnull 18
        13: .line 233
            aload 0 /* this */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._nodeWatches:Ljava/util/Set;
            aload 3 /* parentPath */
            getstatic org.apache.zookeeper.Watcher$Event$EventType.NodeChildrenChanged:Lorg/apache/zookeeper/Watcher$Event$EventType;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkWatch:(Ljava/util/Set;Ljava/lang/String;Lorg/apache/zookeeper/Watcher$Event$EventType;)V
        end local 3 // java.lang.String parentPath
        14: .line 235
            goto 18
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.String int
      StackMap stack: java.lang.Throwable
        15: astore 5
        16: .line 236
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        17: .line 237
            aload 5
            athrow
        18: .line 236
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        19: .line 238
            return
        end local 2 // int version
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0        this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0   20     1        path  Ljava/lang/String;
            0   20     2     version  I
            4   14     3  parentPath  Ljava/lang/String;
            7    9     4        item  Lorg/I0Itec/zkclient/InMemoryConnection$DataAndVersion;
      Exception table:
        from    to  target  type
           1    15      15  any
    Exceptions:
      throws java.lang.InterruptedException, org.apache.zookeeper.KeeperException
    MethodParameters:
         Name  Flags
      path     
      version  

  public boolean exists(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // boolean watch
         0: .line 242
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         1: .line 244
            iload 2 /* watch */
            ifeq 3
         2: .line 245
            aload 0 /* this */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._nodeWatches:Ljava/util/Set;
            aload 1 /* path */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.installWatch:(Ljava/util/Set;Ljava/lang/String;)V
         3: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            istore 4
         4: .line 249
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
         5: .line 247
            iload 4
            ireturn
         6: .line 248
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 3
         7: .line 249
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
         8: .line 250
            aload 3
            athrow
        end local 2 // boolean watch
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    9     1   path  Ljava/lang/String;
            0    9     2  watch  Z
      Exception table:
        from    to  target  type
           1     4       6  any
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    MethodParameters:
       Name  Flags
      path   
      watch  

  private void installWatch(java.util.Set<java.lang.String>, java.lang.String);
    descriptor: (Ljava/util/Set;Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.util.Set watches
        start local 2 // java.lang.String path
         0: .line 254
            aload 1 /* watches */
            aload 2 /* path */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         1: .line 255
            return
        end local 2 // java.lang.String path
        end local 1 // java.util.Set watches
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    2     1  watches  Ljava/util/Set<Ljava/lang/String;>;
            0    2     2     path  Ljava/lang/String;
    Signature: (Ljava/util/Set<Ljava/lang/String;>;Ljava/lang/String;)V
    MethodParameters:
         Name  Flags
      watches  
      path     

  public java.util.List<java.lang.String> getChildren(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // boolean watch
         0: .line 259
            aload 0 /* this */
            aload 1 /* path */
            iconst_0
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.exists:(Ljava/lang/String;Z)Z
            ifne 2
         1: .line 260
            getstatic org.apache.zookeeper.KeeperException$Code.NONODE:Lorg/apache/zookeeper/KeeperException$Code;
            aload 1 /* path */
            invokestatic org.apache.zookeeper.KeeperException.create:(Lorg/apache/zookeeper/KeeperException$Code;Ljava/lang/String;)Lorg/apache/zookeeper/KeeperException;
            athrow
         2: .line 262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* path */
            iconst_0
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.exists:(Ljava/lang/String;Z)Z
            ifeq 4
            iload 2 /* watch */
            ifeq 4
         3: .line 263
            aload 0 /* this */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._nodeWatches:Ljava/util/Set;
            aload 1 /* path */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.installWatch:(Ljava/util/Set;Ljava/lang/String;)V
         4: .line 266
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* path */
            iconst_1
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkACL:(Ljava/lang/String;I)V
         5: .line 267
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* children */
        start local 3 // java.util.ArrayList children
         6: .line 268
            aload 1 /* path */
            ldc "/"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 4 /* directoryStack */
        start local 4 // java.lang.String[] directoryStack
         7: .line 269
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            invokeinterface java.util.Map.keySet:()Ljava/util/Set;
            astore 5 /* keySet */
        start local 5 // java.util.Set keySet
         8: .line 271
            aload 5 /* keySet */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 14
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.String int java.util.ArrayList java.lang.String[] java.util.Set top java.util.Iterator
      StackMap stack:
         9: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* string */
        start local 6 // java.lang.String string
        10: .line 272
            aload 6 /* string */
            aload 1 /* path */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 14
        11: .line 273
            aload 6 /* string */
            ldc "/"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 8 /* stack */
        start local 8 // java.lang.String[] stack
        12: .line 276
            aload 8 /* stack */
            arraylength
            aload 4 /* directoryStack */
            arraylength
            iconst_1
            iadd
            if_icmpne 14
        13: .line 277
            aload 3 /* children */
            aload 8 /* stack */
            aload 8 /* stack */
            arraylength
            iconst_1
            isub
            aaload
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // java.lang.String[] stack
        end local 6 // java.lang.String string
        14: .line 271
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        15: .line 282
            aload 3 /* children */
            areturn
        end local 5 // java.util.Set keySet
        end local 4 // java.lang.String[] directoryStack
        end local 3 // java.util.ArrayList children
        end local 2 // boolean watch
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   16     0            this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0   16     1            path  Ljava/lang/String;
            0   16     2           watch  Z
            6   16     3        children  Ljava/util/ArrayList<Ljava/lang/String;>;
            7   16     4  directoryStack  [Ljava/lang/String;
            8   16     5          keySet  Ljava/util/Set<Ljava/lang/String;>;
           10   14     6          string  Ljava/lang/String;
           12   14     8           stack  [Ljava/lang/String;
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    Signature: (Ljava/lang/String;Z)Ljava/util/List<Ljava/lang/String;>;
    MethodParameters:
       Name  Flags
      path   
      watch  

  public org.apache.zookeeper.ZooKeeper$States getZookeeperState();
    descriptor: ()Lorg/apache/zookeeper/ZooKeeper$States;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
         0: .line 287
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         1: .line 289
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
            ifnonnull 5
         2: .line 290
            getstatic org.apache.zookeeper.ZooKeeper$States.CLOSED:Lorg/apache/zookeeper/ZooKeeper$States;
            astore 2
         3: .line 294
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
         4: .line 290
            aload 2
            areturn
         5: .line 292
      StackMap locals:
      StackMap stack:
            getstatic org.apache.zookeeper.ZooKeeper$States.CONNECTED:Lorg/apache/zookeeper/ZooKeeper$States;
            astore 2
         6: .line 294
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
         7: .line 292
            aload 2
            areturn
         8: .line 293
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 1
         9: .line 294
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        10: .line 295
            aload 1
            athrow
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/I0Itec/zkclient/InMemoryConnection;
      Exception table:
        from    to  target  type
           1     3       8  any
           5     6       8  any

  public byte[] readData(java.lang.String, org.apache.zookeeper.data.Stat, boolean);
    descriptor: (Ljava/lang/String;Lorg/apache/zookeeper/data/Stat;Z)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // org.apache.zookeeper.data.Stat stat
        start local 3 // boolean watch
         0: .line 300
            iload 3 /* watch */
            ifeq 2
         1: .line 301
            aload 0 /* this */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._dataWatches:Ljava/util/Set;
            aload 1 /* path */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.installWatch:(Ljava/util/Set;Ljava/lang/String;)V
         2: .line 303
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         3: .line 305
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
            astore 4 /* dataAndVersion */
        start local 4 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion dataAndVersion
         4: .line 306
            aload 4 /* dataAndVersion */
            ifnonnull 6
         5: .line 307
            new org.I0Itec.zkclient.exception.ZkNoNodeException
            dup
            new org.apache.zookeeper.KeeperException$NoNodeException
            dup
            invokespecial org.apache.zookeeper.KeeperException$NoNodeException.<init>:()V
            invokespecial org.I0Itec.zkclient.exception.ZkNoNodeException.<init>:(Lorg/apache/zookeeper/KeeperException;)V
            athrow
         6: .line 309
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
      StackMap stack:
            aload 0 /* this */
            aload 1 /* path */
            iconst_1
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkACL:(Ljava/lang/String;I)V
         7: .line 310
            aload 4 /* dataAndVersion */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.getData:()[B
            astore 5 /* bs */
        start local 5 // byte[] bs
         8: .line 311
            aload 2 /* stat */
            ifnull 10
         9: .line 312
            aload 2 /* stat */
            aload 4 /* dataAndVersion */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.getVersion:()I
            invokevirtual org.apache.zookeeper.data.Stat.setVersion:(I)V
        10: .line 314
      StackMap locals: byte[]
      StackMap stack:
            aload 5 /* bs */
            astore 7
        11: .line 316
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        12: .line 314
            aload 7
            areturn
        end local 5 // byte[] bs
        end local 4 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion dataAndVersion
        13: .line 315
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.String org.apache.zookeeper.data.Stat int
      StackMap stack: java.lang.Throwable
            astore 6
        14: .line 316
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        15: .line 317
            aload 6
            athrow
        end local 3 // boolean watch
        end local 2 // org.apache.zookeeper.data.Stat stat
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   16     0            this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0   16     1            path  Ljava/lang/String;
            0   16     2            stat  Lorg/apache/zookeeper/data/Stat;
            0   16     3           watch  Z
            4   13     4  dataAndVersion  Lorg/I0Itec/zkclient/InMemoryConnection$DataAndVersion;
            8   13     5              bs  [B
      Exception table:
        from    to  target  type
           3    11      13  any
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    MethodParameters:
       Name  Flags
      path   
      stat   
      watch  

  public void writeData(java.lang.String, byte[], int);
    descriptor: (Ljava/lang/String;[BI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // byte[] data
        start local 3 // int expectedVersion
         0: .line 322
            aload 0 /* this */
            aload 1 /* path */
            aload 2 /* data */
            iload 3 /* expectedVersion */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.writeDataReturnStat:(Ljava/lang/String;[BI)Lorg/apache/zookeeper/data/Stat;
            pop
         1: .line 323
            return
        end local 3 // int expectedVersion
        end local 2 // byte[] data
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    2     1             path  Ljava/lang/String;
            0    2     2             data  [B
            0    2     3  expectedVersion  I
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    MethodParameters:
                 Name  Flags
      path             
      data             
      expectedVersion  

  public org.apache.zookeeper.data.Stat writeDataReturnStat(java.lang.String, byte[], int);
    descriptor: (Ljava/lang/String;[BI)Lorg/apache/zookeeper/data/Stat;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // byte[] data
        start local 3 // int expectedVersion
         0: .line 327
            iconst_m1
            istore 4 /* newVersion */
        start local 4 // int newVersion
         1: .line 328
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         2: .line 330
            aload 0 /* this */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._dataWatches:Ljava/util/Set;
            aload 1 /* path */
            getstatic org.apache.zookeeper.Watcher$Event$EventType.NodeDataChanged:Lorg/apache/zookeeper/Watcher$Event$EventType;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkWatch:(Ljava/util/Set;Ljava/lang/String;Lorg/apache/zookeeper/Watcher$Event$EventType;)V
         3: .line 331
            aload 0 /* this */
            aload 1 /* path */
            iconst_0
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.exists:(Ljava/lang/String;Z)Z
            ifne 5
         4: .line 332
            new org.apache.zookeeper.KeeperException$NoNodeException
            dup
            invokespecial org.apache.zookeeper.KeeperException$NoNodeException.<init>:()V
            athrow
         5: .line 334
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* path */
            iconst_2
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkACL:(Ljava/lang/String;I)V
         6: .line 335
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.getVersion:()I
            iconst_1
            iadd
            istore 4 /* newVersion */
         7: .line 336
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            new org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
            dup
            aload 2 /* data */
            iload 4 /* newVersion */
            invokespecial org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.<init>:([BI)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 337
            aload 0 /* this */
            aload 1 /* path */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.getParentPath:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* parentPath */
        start local 5 // java.lang.String parentPath
         9: .line 338
            aload 5 /* parentPath */
            ifnull 15
        10: .line 339
            aload 0 /* this */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._nodeWatches:Ljava/util/Set;
            aload 5 /* parentPath */
            getstatic org.apache.zookeeper.Watcher$Event$EventType.NodeChildrenChanged:Lorg/apache/zookeeper/Watcher$Event$EventType;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkWatch:(Ljava/util/Set;Ljava/lang/String;Lorg/apache/zookeeper/Watcher$Event$EventType;)V
        end local 5 // java.lang.String parentPath
        11: .line 341
            goto 15
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: astore 6
        13: .line 342
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        14: .line 343
            aload 6
            athrow
        15: .line 342
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        16: .line 344
            new org.apache.zookeeper.data.Stat
            dup
            invokespecial org.apache.zookeeper.data.Stat.<init>:()V
            astore 5 /* stat */
        start local 5 // org.apache.zookeeper.data.Stat stat
        17: .line 345
            aload 5 /* stat */
            iload 4 /* newVersion */
            invokevirtual org.apache.zookeeper.data.Stat.setVersion:(I)V
        18: .line 346
            aload 5 /* stat */
            areturn
        end local 5 // org.apache.zookeeper.data.Stat stat
        end local 4 // int newVersion
        end local 3 // int expectedVersion
        end local 2 // byte[] data
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   19     0             this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0   19     1             path  Ljava/lang/String;
            0   19     2             data  [B
            0   19     3  expectedVersion  I
            1   19     4       newVersion  I
            9   11     5       parentPath  Ljava/lang/String;
           17   19     5             stat  Lorg/apache/zookeeper/data/Stat;
      Exception table:
        from    to  target  type
           2    12      12  any
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    MethodParameters:
                 Name  Flags
      path             
      data             
      expectedVersion  

  private void checkWatch(java.util.Set<java.lang.String>, java.lang.String, org.apache.zookeeper.Watcher$Event$EventType);
    descriptor: (Ljava/util/Set;Ljava/lang/String;Lorg/apache/zookeeper/Watcher$Event$EventType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.util.Set watches
        start local 2 // java.lang.String path
        start local 3 // org.apache.zookeeper.Watcher$Event$EventType eventType
         0: .line 350
            aload 1 /* watches */
            aload 2 /* path */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 3
         1: .line 351
            aload 1 /* watches */
            aload 2 /* path */
            invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
            pop
         2: .line 352
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._eventThread:Lorg/I0Itec/zkclient/InMemoryConnection$EventThread;
            new org.apache.zookeeper.WatchedEvent
            dup
            aload 3 /* eventType */
            getstatic org.apache.zookeeper.Watcher$Event$KeeperState.SyncConnected:Lorg/apache/zookeeper/Watcher$Event$KeeperState;
            aload 2 /* path */
            invokespecial org.apache.zookeeper.WatchedEvent.<init>:(Lorg/apache/zookeeper/Watcher$Event$EventType;Lorg/apache/zookeeper/Watcher$Event$KeeperState;Ljava/lang/String;)V
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$EventThread.send:(Lorg/apache/zookeeper/WatchedEvent;)V
         3: .line 354
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.apache.zookeeper.Watcher$Event$EventType eventType
        end local 2 // java.lang.String path
        end local 1 // java.util.Set watches
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    4     1    watches  Ljava/util/Set<Ljava/lang/String;>;
            0    4     2       path  Ljava/lang/String;
            0    4     3  eventType  Lorg/apache/zookeeper/Watcher$Event$EventType;
    Signature: (Ljava/util/Set<Ljava/lang/String;>;Ljava/lang/String;Lorg/apache/zookeeper/Watcher$Event$EventType;)V
    MethodParameters:
           Name  Flags
      watches    
      path       
      eventType  

  public long getCreateTime(java.lang.String);
    descriptor: (Ljava/lang/String;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
         0: .line 358
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._creationTime:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Long
            astore 2 /* time */
        start local 2 // java.lang.Long time
         1: .line 359
            aload 2 /* time */
            ifnonnull 3
         2: .line 360
            ldc -1
            lreturn
         3: .line 362
      StackMap locals: java.lang.Long
      StackMap stack:
            aload 2 /* time */
            invokevirtual java.lang.Long.longValue:()J
            lreturn
        end local 2 // java.lang.Long time
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    4     1  path  Ljava/lang/String;
            1    4     2  time  Ljava/lang/Long;
    MethodParameters:
      Name  Flags
      path  

  public java.lang.String getServers();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
         0: .line 367
            ldc "mem"
            areturn
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/I0Itec/zkclient/InMemoryConnection;

  public java.util.List<org.apache.zookeeper.OpResult> multi(java.lang.Iterable<org.apache.zookeeper.Op>);
    descriptor: (Ljava/lang/Iterable;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.Iterable ops
         0: .line 372
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* opResults */
        start local 2 // java.util.List opResults
         1: .line 373
            aload 1 /* ops */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 22
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.Iterable java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.zookeeper.Op
            astore 3 /* op */
        start local 3 // org.apache.zookeeper.Op op
         3: .line 374
            ldc Lorg/apache/zookeeper/Op$Check;
            aload 3 /* op */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 8
         4: .line 375
            aload 3 /* op */
            invokevirtual org.apache.zookeeper.Op.toRequestRecord:()Lorg/apache/jute/Record;
            checkcast org.apache.zookeeper.proto.CheckVersionRequest
            astore 5 /* check */
        start local 5 // org.apache.zookeeper.proto.CheckVersionRequest check
         5: .line 376
            aload 0 /* this */
            aload 5 /* check */
            invokevirtual org.apache.zookeeper.proto.CheckVersionRequest.getPath:()Ljava/lang/String;
            iconst_0
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.exists:(Ljava/lang/String;Z)Z
            pop
         6: .line 377
            aload 2 /* opResults */
            new org.apache.zookeeper.OpResult$CheckResult
            dup
            invokespecial org.apache.zookeeper.OpResult$CheckResult.<init>:()V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // org.apache.zookeeper.proto.CheckVersionRequest check
         7: .line 378
            goto 22
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.Iterable java.util.List org.apache.zookeeper.Op java.util.Iterator
      StackMap stack:
         8: ldc Lorg/apache/zookeeper/Op$Create;
            aload 3 /* op */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 13
         9: .line 379
            aload 3 /* op */
            invokevirtual org.apache.zookeeper.Op.toRequestRecord:()Lorg/apache/jute/Record;
            checkcast org.apache.zookeeper.proto.CreateRequest
            astore 5 /* create */
        start local 5 // org.apache.zookeeper.proto.CreateRequest create
        10: .line 380
            aload 0 /* this */
            aload 5 /* create */
            invokevirtual org.apache.zookeeper.proto.CreateRequest.getPath:()Ljava/lang/String;
            aload 5 /* create */
            invokevirtual org.apache.zookeeper.proto.CreateRequest.getData:()[B
            aload 5 /* create */
            invokevirtual org.apache.zookeeper.proto.CreateRequest.getFlags:()I
            invokestatic org.apache.zookeeper.CreateMode.fromFlag:(I)Lorg/apache/zookeeper/CreateMode;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.create:(Ljava/lang/String;[BLorg/apache/zookeeper/CreateMode;)Ljava/lang/String;
            astore 6 /* path */
        start local 6 // java.lang.String path
        11: .line 381
            aload 2 /* opResults */
            new org.apache.zookeeper.OpResult$CreateResult
            dup
            aload 6 /* path */
            invokespecial org.apache.zookeeper.OpResult$CreateResult.<init>:(Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // java.lang.String path
        end local 5 // org.apache.zookeeper.proto.CreateRequest create
        12: .line 382
            goto 22
      StackMap locals:
      StackMap stack:
        13: ldc Lorg/apache/zookeeper/Op$Delete;
            aload 3 /* op */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 18
        14: .line 383
            aload 3 /* op */
            invokevirtual org.apache.zookeeper.Op.toRequestRecord:()Lorg/apache/jute/Record;
            checkcast org.apache.zookeeper.proto.DeleteRequest
            astore 5 /* delete */
        start local 5 // org.apache.zookeeper.proto.DeleteRequest delete
        15: .line 384
            aload 0 /* this */
            aload 5 /* delete */
            invokevirtual org.apache.zookeeper.proto.DeleteRequest.getPath:()Ljava/lang/String;
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.delete:(Ljava/lang/String;)V
        16: .line 385
            aload 2 /* opResults */
            new org.apache.zookeeper.OpResult$DeleteResult
            dup
            invokespecial org.apache.zookeeper.OpResult$DeleteResult.<init>:()V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // org.apache.zookeeper.proto.DeleteRequest delete
        17: .line 386
            goto 22
      StackMap locals:
      StackMap stack:
        18: ldc Lorg/apache/zookeeper/Op$SetData;
            aload 3 /* op */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 22
        19: .line 387
            aload 3 /* op */
            invokevirtual org.apache.zookeeper.Op.toRequestRecord:()Lorg/apache/jute/Record;
            checkcast org.apache.zookeeper.proto.SetDataRequest
            astore 5 /* setData */
        start local 5 // org.apache.zookeeper.proto.SetDataRequest setData
        20: .line 388
            aload 0 /* this */
            aload 5 /* setData */
            invokevirtual org.apache.zookeeper.proto.SetDataRequest.getPath:()Ljava/lang/String;
            aload 5 /* setData */
            invokevirtual org.apache.zookeeper.proto.SetDataRequest.getData:()[B
            aload 5 /* setData */
            invokevirtual org.apache.zookeeper.proto.SetDataRequest.getVersion:()I
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.writeData:(Ljava/lang/String;[BI)V
        21: .line 389
            aload 2 /* opResults */
            new org.apache.zookeeper.OpResult$SetDataResult
            dup
            aconst_null
            invokespecial org.apache.zookeeper.OpResult$SetDataResult.<init>:(Lorg/apache/zookeeper/data/Stat;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // org.apache.zookeeper.proto.SetDataRequest setData
        end local 3 // org.apache.zookeeper.Op op
        22: .line 373
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.Iterable java.util.List top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        23: .line 392
            aload 2 /* opResults */
            areturn
        end local 2 // java.util.List opResults
        end local 1 // java.lang.Iterable ops
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   24     0       this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0   24     1        ops  Ljava/lang/Iterable<Lorg/apache/zookeeper/Op;>;
            1   24     2  opResults  Ljava/util/List<Lorg/apache/zookeeper/OpResult;>;
            3   22     3         op  Lorg/apache/zookeeper/Op;
            5    7     5      check  Lorg/apache/zookeeper/proto/CheckVersionRequest;
           10   12     5     create  Lorg/apache/zookeeper/proto/CreateRequest;
           11   12     6       path  Ljava/lang/String;
           15   17     5     delete  Lorg/apache/zookeeper/proto/DeleteRequest;
           20   22     5    setData  Lorg/apache/zookeeper/proto/SetDataRequest;
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    Signature: (Ljava/lang/Iterable<Lorg/apache/zookeeper/Op;>;)Ljava/util/List<Lorg/apache/zookeeper/OpResult;>;
    MethodParameters:
      Name  Flags
      ops   

  public void addAuthInfo(java.lang.String, byte[]);
    descriptor: (Ljava/lang/String;[B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String scheme
        start local 2 // byte[] auth
         0: .line 397
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._ids:Ljava/util/List;
            new org.apache.zookeeper.data.Id
            dup
            aload 1 /* scheme */
            new java.lang.String
            dup
            aload 2 /* auth */
            invokespecial java.lang.String.<init>:([B)V
            invokespecial org.apache.zookeeper.data.Id.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 398
            return
        end local 2 // byte[] auth
        end local 1 // java.lang.String scheme
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    2     1  scheme  Ljava/lang/String;
            0    2     2    auth  [B
    MethodParameters:
        Name  Flags
      scheme  
      auth    

  public void setAcl(java.lang.String, java.util.List<org.apache.zookeeper.data.ACL>, );
    descriptor: (Ljava/lang/String;Ljava/util/List;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // java.util.List acl
        start local 3 // int version
         0: .line 402
            aload 0 /* this */
            aload 1 /* path */
            iconst_0
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.exists:(Ljava/lang/String;Z)Z
            ifne 2
         1: .line 403
            new org.apache.zookeeper.KeeperException$NoNodeException
            dup
            invokespecial org.apache.zookeeper.KeeperException$NoNodeException.<init>:()V
            athrow
         2: .line 406
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
            astore 4 /* dataAndVersion */
        start local 4 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion dataAndVersion
         3: .line 407
            iload 3 /* version */
            aload 4 /* dataAndVersion */
            getfield org.I0Itec.zkclient.InMemoryConnection$DataAndVersion._version:I
            if_icmpeq 5
         4: .line 408
            new org.apache.zookeeper.KeeperException$BadVersionException
            dup
            invokespecial org.apache.zookeeper.KeeperException$BadVersionException.<init>:()V
            athrow
         5: .line 411
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
      StackMap stack:
            aload 0 /* this */
            aload 1 /* path */
            bipush 16
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.checkACL:(Ljava/lang/String;I)V
         6: .line 413
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.lock:()V
         7: .line 415
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            new org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
            dup
            aload 4 /* dataAndVersion */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.getData:()[B
            aload 4 /* dataAndVersion */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.getVersion:()I
            iconst_1
            iadd
            aload 2 /* acl */
            invokespecial org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.<init>:([BILjava/util/List;)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 416
            goto 12
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: astore 5
        10: .line 417
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        11: .line 418
            aload 5
            athrow
        12: .line 417
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._lock:Ljava/util/concurrent/locks/Lock;
            invokeinterface java.util.concurrent.locks.Lock.unlock:()V
        13: .line 419
            return
        end local 4 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion dataAndVersion
        end local 3 // int version
        end local 2 // java.util.List acl
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   14     0            this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0   14     1            path  Ljava/lang/String;
            0   14     2             acl  Ljava/util/List<Lorg/apache/zookeeper/data/ACL;>;
            0   14     3         version  I
            3   14     4  dataAndVersion  Lorg/I0Itec/zkclient/InMemoryConnection$DataAndVersion;
      Exception table:
        from    to  target  type
           7     9       9  any
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    Signature: (Ljava/lang/String;Ljava/util/List<Lorg/apache/zookeeper/data/ACL;>;I)V
    MethodParameters:
         Name  Flags
      path     
      acl      
      version  

  public java.util.Map$Entry<java.util.List<org.apache.zookeeper.data.ACL>, org.apache.zookeeper.data.Stat> getAcl(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/Map$Entry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
         0: .line 423
            aload 0 /* this */
            aload 1 /* path */
            iconst_0
            invokevirtual org.I0Itec.zkclient.InMemoryConnection.exists:(Ljava/lang/String;Z)Z
            ifne 2
         1: .line 424
            new org.apache.zookeeper.KeeperException$NoNodeException
            dup
            invokespecial org.apache.zookeeper.KeeperException$NoNodeException.<init>:()V
            athrow
         2: .line 427
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
            astore 2 /* dataAndVersion */
        start local 2 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion dataAndVersion
         3: .line 429
            new org.apache.zookeeper.data.Stat
            dup
            invokespecial org.apache.zookeeper.data.Stat.<init>:()V
            astore 3 /* stat */
        start local 3 // org.apache.zookeeper.data.Stat stat
         4: .line 430
            aload 3 /* stat */
            aload 2 /* dataAndVersion */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.getVersion:()I
            invokevirtual org.apache.zookeeper.data.Stat.setVersion:(I)V
         5: .line 431
            aload 3 /* stat */
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._creationTime:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            invokevirtual org.apache.zookeeper.data.Stat.setCtime:(J)V
         6: .line 433
            new java.util.AbstractMap$SimpleEntry
            dup
            aload 2 /* dataAndVersion */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.getAcl:()Ljava/util/List;
            aload 3 /* stat */
            invokespecial java.util.AbstractMap$SimpleEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 3 // org.apache.zookeeper.data.Stat stat
        end local 2 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion dataAndVersion
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0    7     1            path  Ljava/lang/String;
            3    7     2  dataAndVersion  Lorg/I0Itec/zkclient/InMemoryConnection$DataAndVersion;
            4    7     3            stat  Lorg/apache/zookeeper/data/Stat;
    Exceptions:
      throws org.apache.zookeeper.KeeperException, java.lang.InterruptedException
    Signature: (Ljava/lang/String;)Ljava/util/Map$Entry<Ljava/util/List<Lorg/apache/zookeeper/data/ACL;>;Lorg/apache/zookeeper/data/Stat;>;
    MethodParameters:
      Name  Flags
      path  

  private void checkACL(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=10, args_size=3
        start local 0 // org.I0Itec.zkclient.InMemoryConnection this
        start local 1 // java.lang.String path
        start local 2 // int perm
         0: .line 445
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._data:Ljava/util/Map;
            aload 1 /* path */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
            astore 3 /* node */
        start local 3 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion node
         1: .line 446
            aload 3 /* node */
            ifnonnull 3
         2: .line 447
            return
         3: .line 449
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection$DataAndVersion
      StackMap stack:
            aload 3 /* node */
            invokevirtual org.I0Itec.zkclient.InMemoryConnection$DataAndVersion.getAcl:()Ljava/util/List;
            astore 4 /* acl */
        start local 4 // java.util.List acl
         4: .line 450
            aload 4 /* acl */
            ifnull 5
            aload 4 /* acl */
            invokeinterface java.util.List.size:()I
            ifne 6
         5: .line 451
      StackMap locals: java.util.List
      StackMap stack:
            return
         6: .line 453
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._ids:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 10
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.String int org.I0Itec.zkclient.InMemoryConnection$DataAndVersion java.util.List top java.util.Iterator
      StackMap stack:
         7: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.zookeeper.data.Id
            astore 5 /* authId */
        start local 5 // org.apache.zookeeper.data.Id authId
         8: .line 454
            aload 5 /* authId */
            invokevirtual org.apache.zookeeper.data.Id.getScheme:()Ljava/lang/String;
            ldc "super"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         9: .line 455
            return
        end local 5 // org.apache.zookeeper.data.Id authId
        10: .line 453
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        11: .line 458
            aload 4 /* acl */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 22
      StackMap locals:
      StackMap stack:
        12: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.zookeeper.data.ACL
            astore 5 /* a */
        start local 5 // org.apache.zookeeper.data.ACL a
        13: .line 459
            aload 5 /* a */
            invokevirtual org.apache.zookeeper.data.ACL.getId:()Lorg/apache/zookeeper/data/Id;
            astore 7 /* id */
        start local 7 // org.apache.zookeeper.data.Id id
        14: .line 460
            aload 5 /* a */
            invokevirtual org.apache.zookeeper.data.ACL.getPerms:()I
            iload 2 /* perm */
            iand
            ifeq 22
        15: .line 461
            aload 7 /* id */
            invokevirtual org.apache.zookeeper.data.Id.getScheme:()Ljava/lang/String;
            ldc "world"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 17
            aload 7 /* id */
            invokevirtual org.apache.zookeeper.data.Id.getId:()Ljava/lang/String;
            ldc "anyone"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 17
        16: .line 462
            return
        17: .line 464
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.String int org.I0Itec.zkclient.InMemoryConnection$DataAndVersion java.util.List org.apache.zookeeper.data.ACL java.util.Iterator org.apache.zookeeper.data.Id
      StackMap stack:
            aload 0 /* this */
            getfield org.I0Itec.zkclient.InMemoryConnection._ids:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 21
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.String int org.I0Itec.zkclient.InMemoryConnection$DataAndVersion java.util.List org.apache.zookeeper.data.ACL java.util.Iterator org.apache.zookeeper.data.Id top java.util.Iterator
      StackMap stack:
        18: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.zookeeper.data.Id
            astore 8 /* authId */
        start local 8 // org.apache.zookeeper.data.Id authId
        19: .line 465
            aload 8 /* authId */
            invokevirtual org.apache.zookeeper.data.Id.getScheme:()Ljava/lang/String;
            aload 7 /* id */
            invokevirtual org.apache.zookeeper.data.Id.getScheme:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 21
            aload 8 /* authId */
            invokevirtual org.apache.zookeeper.data.Id.getId:()Ljava/lang/String;
            aload 7 /* id */
            invokevirtual org.apache.zookeeper.data.Id.getId:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 21
        20: .line 466
            return
        end local 8 // org.apache.zookeeper.data.Id authId
        21: .line 464
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        end local 7 // org.apache.zookeeper.data.Id id
        end local 5 // org.apache.zookeeper.data.ACL a
        22: .line 458
      StackMap locals: org.I0Itec.zkclient.InMemoryConnection java.lang.String int org.I0Itec.zkclient.InMemoryConnection$DataAndVersion java.util.List top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        23: .line 471
            new org.apache.zookeeper.KeeperException$NoAuthException
            dup
            invokespecial org.apache.zookeeper.KeeperException$NoAuthException.<init>:()V
            athrow
        end local 4 // java.util.List acl
        end local 3 // org.I0Itec.zkclient.InMemoryConnection$DataAndVersion node
        end local 2 // int perm
        end local 1 // java.lang.String path
        end local 0 // org.I0Itec.zkclient.InMemoryConnection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   24     0    this  Lorg/I0Itec/zkclient/InMemoryConnection;
            0   24     1    path  Ljava/lang/String;
            0   24     2    perm  I
            1   24     3    node  Lorg/I0Itec/zkclient/InMemoryConnection$DataAndVersion;
            4   24     4     acl  Ljava/util/List<Lorg/apache/zookeeper/data/ACL;>;
            8   10     5  authId  Lorg/apache/zookeeper/data/Id;
           13   22     5       a  Lorg/apache/zookeeper/data/ACL;
           14   22     7      id  Lorg/apache/zookeeper/data/Id;
           19   21     8  authId  Lorg/apache/zookeeper/data/Id;
    Exceptions:
      throws org.apache.zookeeper.KeeperException$NoAuthException
    MethodParameters:
      Name  Flags
      path  
      perm  
}
SourceFile: "InMemoryConnection.java"
NestMembers:
  org.I0Itec.zkclient.InMemoryConnection$DataAndVersion  org.I0Itec.zkclient.InMemoryConnection$EventThread
InnerClasses:
  public SimpleEntry = java.util.AbstractMap$SimpleEntry of java.util.AbstractMap
  public abstract Entry = java.util.Map$Entry of java.util.Map
  public DataAndVersion = org.I0Itec.zkclient.InMemoryConnection$DataAndVersion of org.I0Itec.zkclient.InMemoryConnection
  private EventThread = org.I0Itec.zkclient.InMemoryConnection$EventThread of org.I0Itec.zkclient.InMemoryConnection
  public BadVersionException = org.apache.zookeeper.KeeperException$BadVersionException of org.apache.zookeeper.KeeperException
  public final Code = org.apache.zookeeper.KeeperException$Code of org.apache.zookeeper.KeeperException
  public NoAuthException = org.apache.zookeeper.KeeperException$NoAuthException of org.apache.zookeeper.KeeperException
  public NoNodeException = org.apache.zookeeper.KeeperException$NoNodeException of org.apache.zookeeper.KeeperException
  public NodeExistsException = org.apache.zookeeper.KeeperException$NodeExistsException of org.apache.zookeeper.KeeperException
  public Check = org.apache.zookeeper.Op$Check of org.apache.zookeeper.Op
  public Create = org.apache.zookeeper.Op$Create of org.apache.zookeeper.Op
  public Delete = org.apache.zookeeper.Op$Delete of org.apache.zookeeper.Op
  public SetData = org.apache.zookeeper.Op$SetData of org.apache.zookeeper.Op
  public CheckResult = org.apache.zookeeper.OpResult$CheckResult of org.apache.zookeeper.OpResult
  public CreateResult = org.apache.zookeeper.OpResult$CreateResult of org.apache.zookeeper.OpResult
  public DeleteResult = org.apache.zookeeper.OpResult$DeleteResult of org.apache.zookeeper.OpResult
  public SetDataResult = org.apache.zookeeper.OpResult$SetDataResult of org.apache.zookeeper.OpResult
  public abstract Event = org.apache.zookeeper.Watcher$Event of org.apache.zookeeper.Watcher
  public final EventType = org.apache.zookeeper.Watcher$Event$EventType of org.apache.zookeeper.Watcher$Event
  public final KeeperState = org.apache.zookeeper.Watcher$Event$KeeperState of org.apache.zookeeper.Watcher$Event
  public final States = org.apache.zookeeper.ZooKeeper$States of org.apache.zookeeper.ZooKeeper