public class org.hsqldb.rights.Grantee implements org.hsqldb.SchemaObject
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hsqldb.rights.Grantee
  super_class: java.lang.Object
{
  boolean isRole;
    descriptor: Z
    flags: (0x0000) 

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

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

  boolean isPublic;
    descriptor: Z
    flags: (0x0000) 

  boolean isSystem;
    descriptor: Z
    flags: (0x0000) 

  protected org.hsqldb.HsqlNameManager$HsqlName granteeName;
    descriptor: Lorg/hsqldb/HsqlNameManager$HsqlName;
    flags: (0x0004) ACC_PROTECTED

  private org.hsqldb.lib.MultiValueHashMap directRightsMap;
    descriptor: Lorg/hsqldb/lib/MultiValueHashMap;
    flags: (0x0002) ACC_PRIVATE

  org.hsqldb.lib.HashMap fullRightsMap;
    descriptor: Lorg/hsqldb/lib/HashMap;
    flags: (0x0000) 

  org.hsqldb.lib.OrderedHashSet roles;
    descriptor: Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0000) 

  private org.hsqldb.lib.MultiValueHashMap grantedRightsMap;
    descriptor: Lorg/hsqldb/lib/MultiValueHashMap;
    flags: (0x0002) ACC_PRIVATE

  protected org.hsqldb.rights.GranteeManager granteeManager;
    descriptor: Lorg/hsqldb/rights/GranteeManager;
    flags: (0x0004) ACC_PROTECTED

  protected org.hsqldb.rights.Right ownerRights;
    descriptor: Lorg/hsqldb/rights/Right;
    flags: (0x0004) ACC_PROTECTED

  void <init>(org.hsqldb.HsqlNameManager$HsqlName, org.hsqldb.rights.GranteeManager);
    descriptor: (Lorg/hsqldb/HsqlNameManager$HsqlName;Lorg/hsqldb/rights/GranteeManager;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        start local 2 // org.hsqldb.rights.GranteeManager man
         0: .line 122
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 87
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.rights.Grantee.isAdminDirect:Z
         2: .line 90
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.rights.Grantee.isAdmin:Z
         3: .line 93
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.rights.Grantee.isPublic:Z
         4: .line 96
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.rights.Grantee.isSystem:Z
         5: .line 124
            aload 0 /* this */
            new org.hsqldb.lib.HashMap
            dup
            invokespecial org.hsqldb.lib.HashMap.<init>:()V
            putfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
         6: .line 125
            aload 0 /* this */
            new org.hsqldb.lib.MultiValueHashMap
            dup
            invokespecial org.hsqldb.lib.MultiValueHashMap.<init>:()V
            putfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
         7: .line 126
            aload 0 /* this */
            new org.hsqldb.lib.MultiValueHashMap
            dup
            invokespecial org.hsqldb.lib.MultiValueHashMap.<init>:()V
            putfield org.hsqldb.rights.Grantee.grantedRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
         8: .line 127
            aload 0 /* this */
            aload 1 /* name */
            putfield org.hsqldb.rights.Grantee.granteeName:Lorg/hsqldb/HsqlNameManager$HsqlName;
         9: .line 128
            aload 0 /* this */
            aload 2 /* man */
            putfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
        10: .line 129
            aload 0 /* this */
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            putfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
        11: .line 130
            aload 0 /* this */
            new org.hsqldb.rights.Right
            dup
            invokespecial org.hsqldb.rights.Right.<init>:()V
            putfield org.hsqldb.rights.Grantee.ownerRights:Lorg/hsqldb/rights/Right;
        12: .line 131
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.ownerRights:Lorg/hsqldb/rights/Right;
            iconst_1
            putfield org.hsqldb.rights.Right.isFull:Z
        13: .line 132
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.ownerRights:Lorg/hsqldb/rights/Right;
            getstatic org.hsqldb.rights.GranteeManager.systemAuthorisation:Lorg/hsqldb/rights/User;
            putfield org.hsqldb.rights.Right.grantor:Lorg/hsqldb/rights/Grantee;
        14: .line 133
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.ownerRights:Lorg/hsqldb/rights/Right;
            aload 0 /* this */
            putfield org.hsqldb.rights.Right.grantee:Lorg/hsqldb/rights/Grantee;
        15: .line 134
            return
        end local 2 // org.hsqldb.rights.GranteeManager man
        end local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lorg/hsqldb/rights/Grantee;
            0   16     1  name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            0   16     2   man  Lorg/hsqldb/rights/GranteeManager;
    MethodParameters:
      Name  Flags
      name  
      man   

  public int getType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 137
            bipush 11
            ireturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.HsqlNameManager$HsqlName getName();
    descriptor: ()Lorg/hsqldb/HsqlNameManager$HsqlName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 141
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeName:Lorg/hsqldb/HsqlNameManager$HsqlName;
            areturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.HsqlNameManager$HsqlName getSchemaName();
    descriptor: ()Lorg/hsqldb/HsqlNameManager$HsqlName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 145
            aconst_null
            areturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.HsqlNameManager$HsqlName getCatalogName();
    descriptor: ()Lorg/hsqldb/HsqlNameManager$HsqlName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 149
            aconst_null
            areturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.rights.Grantee getOwner();
    descriptor: ()Lorg/hsqldb/rights/Grantee;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 153
            aconst_null
            areturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.lib.OrderedHashSet getReferences();
    descriptor: ()Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 157
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            areturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.lib.OrderedHashSet getComponents();
    descriptor: ()Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 161
            aconst_null
            areturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public void compile(org.hsqldb.Session, org.hsqldb.SchemaObject);
    descriptor: (Lorg/hsqldb/Session;Lorg/hsqldb/SchemaObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.Session session
        start local 2 // org.hsqldb.SchemaObject parentObject
         0: .line 164
            return
        end local 2 // org.hsqldb.SchemaObject parentObject
        end local 1 // org.hsqldb.Session session
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/hsqldb/rights/Grantee;
            0    1     1       session  Lorg/hsqldb/Session;
            0    1     2  parentObject  Lorg/hsqldb/SchemaObject;
    MethodParameters:
              Name  Flags
      session       
      parentObject  

  public java.lang.String getSQL();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 168
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 170
            aload 1 /* sb */
            ldc "CREATE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "ROLE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 171
            aload 1 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeName:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.statementName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 173
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/rights/Grantee;
            1    4     1    sb  Ljava/lang/StringBuilder;

  public long getChangeTimestamp();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 177
            lconst_0
            lreturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public boolean isRole();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 181
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isRole:Z
            ireturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public boolean isSystem();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 185
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isSystem:Z
            ireturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.lib.OrderedHashSet getDirectRoles();
    descriptor: ()Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 192
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            areturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.lib.OrderedHashSet getAllRoles();
    descriptor: ()Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 200
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.getGranteeAndAllRoles:()Lorg/hsqldb/lib/OrderedHashSet;
            astore 1 /* set */
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         1: .line 203
            aload 1 /* set */
            aload 0 /* this */
            invokevirtual org.hsqldb.lib.OrderedHashSet.remove:(Ljava/lang/Object;)Z
            pop
         2: .line 205
            aload 1 /* set */
            areturn
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/rights/Grantee;
            1    3     1   set  Lorg/hsqldb/lib/OrderedHashSet;

  public org.hsqldb.lib.OrderedHashSet getGranteeAndAllRoles();
    descriptor: ()Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 210
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 1 /* set */
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         1: .line 212
            aload 0 /* this */
            aload 1 /* set */
            invokevirtual org.hsqldb.rights.Grantee.addGranteeAndRoles:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            pop
         2: .line 214
            aload 1 /* set */
            areturn
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/rights/Grantee;
            1    3     1   set  Lorg/hsqldb/lib/OrderedHashSet;

  public org.hsqldb.lib.OrderedHashSet getGranteeAndAllRolesWithPublic();
    descriptor: ()Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 219
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 1 /* set */
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         1: .line 221
            aload 0 /* this */
            aload 1 /* set */
            invokevirtual org.hsqldb.rights.Grantee.addGranteeAndRoles:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            pop
         2: .line 222
            aload 1 /* set */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.publicRole:Lorg/hsqldb/rights/Grantee;
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 224
            aload 1 /* set */
            areturn
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/rights/Grantee;
            1    4     1   set  Lorg/hsqldb/lib/OrderedHashSet;

  public boolean isAccessible(org.hsqldb.HsqlNameManager$HsqlName, int);
    descriptor: (Lorg/hsqldb/HsqlNameManager$HsqlName;I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        start local 2 // int privilegeType
         0: .line 229
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 2
         1: .line 230
            iconst_1
            ireturn
         2: .line 233
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 1 /* name */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 3 /* right */
        start local 3 // org.hsqldb.rights.Right right
         3: .line 235
            aload 3 /* right */
            ifnonnull 5
         4: .line 236
            iconst_0
            ireturn
         5: .line 239
      StackMap locals: org.hsqldb.rights.Right
      StackMap stack:
            aload 3 /* right */
            iload 2 /* privilegeType */
            invokevirtual org.hsqldb.rights.Right.canAccess:(I)Z
            ireturn
        end local 3 // org.hsqldb.rights.Right right
        end local 2 // int privilegeType
        end local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lorg/hsqldb/rights/Grantee;
            0    6     1           name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            0    6     2  privilegeType  I
            3    6     3          right  Lorg/hsqldb/rights/Right;
    MethodParameters:
               Name  Flags
      name           
      privilegeType  

  public boolean isAccessible(org.hsqldb.SchemaObject);
    descriptor: (Lorg/hsqldb/SchemaObject;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
         0: .line 246
            aload 0 /* this */
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isAccessible:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ireturn
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/hsqldb/rights/Grantee;
            0    1     1  object  Lorg/hsqldb/SchemaObject;
    MethodParameters:
        Name  Flags
      object  

  public boolean isAccessible(org.hsqldb.HsqlNameManager$HsqlName);
    descriptor: (Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.HsqlNameManager$HsqlName name
         0: .line 251
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 2
         1: .line 252
            iconst_1
            ireturn
         2: .line 255
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 1 /* name */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 2 /* right */
        start local 2 // org.hsqldb.rights.Right right
         3: .line 257
            aload 2 /* right */
            ifnull 5
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.isEmpty:()Z
            ifne 5
         4: .line 258
            iconst_1
            ireturn
         5: .line 261
      StackMap locals: org.hsqldb.rights.Right
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isPublic:Z
            ifne 7
         6: .line 262
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.publicRole:Lorg/hsqldb/rights/Grantee;
            aload 1 /* name */
            invokevirtual org.hsqldb.rights.Grantee.isAccessible:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ireturn
         7: .line 265
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.hsqldb.rights.Right right
        end local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/hsqldb/rights/Grantee;
            0    8     1   name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            3    8     2  right  Lorg/hsqldb/rights/Right;
    MethodParameters:
      Name  Flags
      name  

  private org.hsqldb.lib.OrderedHashSet addGranteeAndRoles(org.hsqldb.lib.OrderedHashSet);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.lib.OrderedHashSet set
         0: .line 277
            aload 1 /* set */
            aload 0 /* this */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
         1: .line 279
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 7
         3: .line 280
      StackMap locals: org.hsqldb.rights.Grantee org.hsqldb.lib.OrderedHashSet top int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Grantee
            astore 2 /* candidateRole */
        start local 2 // org.hsqldb.rights.Grantee candidateRole
         4: .line 282
            aload 1 /* set */
            aload 2 /* candidateRole */
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            ifne 6
         5: .line 283
            aload 2 /* candidateRole */
            aload 1 /* set */
            invokevirtual org.hsqldb.rights.Grantee.addGranteeAndRoles:(Lorg/hsqldb/lib/OrderedHashSet;)Lorg/hsqldb/lib/OrderedHashSet;
            pop
         6: .line 279
      StackMap locals: org.hsqldb.rights.Grantee org.hsqldb.lib.OrderedHashSet org.hsqldb.rights.Grantee int
      StackMap stack:
            iinc 3 /* i */ 1
        end local 2 // org.hsqldb.rights.Grantee candidateRole
      StackMap locals: org.hsqldb.rights.Grantee org.hsqldb.lib.OrderedHashSet top int
      StackMap stack:
         7: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 3
        end local 3 // int i
         8: .line 287
            aload 1 /* set */
            areturn
        end local 1 // org.hsqldb.lib.OrderedHashSet set
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0           this  Lorg/hsqldb/rights/Grantee;
            0    9     1            set  Lorg/hsqldb/lib/OrderedHashSet;
            4    7     2  candidateRole  Lorg/hsqldb/rights/Grantee;
            2    8     3              i  I
    MethodParameters:
      Name  Flags
      set   

  private boolean hasRoleDirect(org.hsqldb.rights.Grantee);
    descriptor: (Lorg/hsqldb/rights/Grantee;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.rights.Grantee role
         0: .line 291
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            aload 1 /* role */
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // org.hsqldb.rights.Grantee role
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;
            0    1     1  role  Lorg/hsqldb/rights/Grantee;
    MethodParameters:
      Name  Flags
      role  

  public boolean hasRole(org.hsqldb.rights.Grantee);
    descriptor: (Lorg/hsqldb/rights/Grantee;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.rights.Grantee role
         0: .line 295
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.getAllRoles:()Lorg/hsqldb/lib/OrderedHashSet;
            aload 1 /* role */
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // org.hsqldb.rights.Grantee role
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;
            0    1     1  role  Lorg/hsqldb/rights/Grantee;
    MethodParameters:
      Name  Flags
      role  

  void grant(org.hsqldb.HsqlNameManager$HsqlName, org.hsqldb.rights.Right, org.hsqldb.rights.Grantee, boolean);
    descriptor: (Lorg/hsqldb/HsqlNameManager$HsqlName;Lorg/hsqldb/rights/Right;Lorg/hsqldb/rights/Grantee;Z)V
    flags: (0x0000) 
    Code:
      stack=3, locals=9, args_size=5
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        start local 2 // org.hsqldb.rights.Right right
        start local 3 // org.hsqldb.rights.Grantee grantor
        start local 4 // boolean withGrant
         0: .line 307
            aload 3 /* grantor */
            aload 1 /* name */
            invokevirtual org.hsqldb.rights.Grantee.getAllGrantableRights:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Lorg/hsqldb/rights/Right;
            astore 5 /* grantableRights */
        start local 5 // org.hsqldb.rights.Right grantableRights
         1: .line 308
            aconst_null
            astore 6 /* existingRight */
        start local 6 // org.hsqldb.rights.Right existingRight
         2: .line 310
            aload 2 /* right */
            getstatic org.hsqldb.rights.Right.fullRights:Lorg/hsqldb/rights/Right;
            if_acmpne 7
         3: .line 311
            aload 5 /* grantableRights */
            invokevirtual org.hsqldb.rights.Right.isEmpty:()Z
            ifeq 5
         4: .line 312
            return
         5: .line 315
      StackMap locals: org.hsqldb.rights.Right org.hsqldb.rights.Right
      StackMap stack:
            aload 5 /* grantableRights */
            astore 2 /* right */
         6: .line 316
            goto 9
         7: .line 317
      StackMap locals:
      StackMap stack:
            aload 5 /* grantableRights */
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.contains:(Lorg/hsqldb/rights/Right;)Z
            ifne 9
         8: .line 318
            sipush 2000
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         9: .line 322
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 1 /* name */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.get:(Ljava/lang/Object;)Lorg/hsqldb/lib/Iterator;
            astore 7 /* it */
        start local 7 // org.hsqldb.lib.Iterator it
        10: .line 324
            goto 16
        11: .line 325
      StackMap locals: org.hsqldb.lib.Iterator
      StackMap stack:
            aload 7 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 8 /* existing */
        start local 8 // org.hsqldb.rights.Right existing
        12: .line 327
            aload 8 /* existing */
            getfield org.hsqldb.rights.Right.grantor:Lorg/hsqldb/rights/Grantee;
            aload 3 /* grantor */
            if_acmpne 16
        13: .line 328
            aload 8 /* existing */
            astore 6 /* existingRight */
        14: .line 330
            aload 6 /* existingRight */
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.add:(Lorg/hsqldb/rights/Right;)V
        15: .line 332
            goto 17
        end local 8 // org.hsqldb.rights.Right existing
        16: .line 324
      StackMap locals:
      StackMap stack:
            aload 7 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 11
        17: .line 336
      StackMap locals:
      StackMap stack:
            aload 6 /* existingRight */
            ifnonnull 22
        18: .line 337
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.duplicate:()Lorg/hsqldb/rights/Right;
            astore 6 /* existingRight */
        19: .line 338
            aload 6 /* existingRight */
            aload 3 /* grantor */
            putfield org.hsqldb.rights.Right.grantor:Lorg/hsqldb/rights/Grantee;
        20: .line 339
            aload 6 /* existingRight */
            aload 0 /* this */
            putfield org.hsqldb.rights.Right.grantee:Lorg/hsqldb/rights/Grantee;
        21: .line 341
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 1 /* name */
            aload 6 /* existingRight */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 344
      StackMap locals:
      StackMap stack:
            iload 4 /* withGrant */
            ifeq 27
        23: .line 345
            aload 6 /* existingRight */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            ifnonnull 26
        24: .line 346
            aload 6 /* existingRight */
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.duplicate:()Lorg/hsqldb/rights/Right;
            putfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
        25: .line 347
            goto 27
        26: .line 348
      StackMap locals:
      StackMap stack:
            aload 6 /* existingRight */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.add:(Lorg/hsqldb/rights/Right;)V
        27: .line 352
      StackMap locals:
      StackMap stack:
            aload 3 /* grantor */
            invokevirtual org.hsqldb.rights.Grantee.isSystem:()Z
            ifne 29
        28: .line 355
            aload 3 /* grantor */
            getfield org.hsqldb.rights.Grantee.grantedRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 1 /* name */
            aload 6 /* existingRight */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        29: .line 358
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.updateAllRights:()V
        30: .line 359
            return
        end local 7 // org.hsqldb.lib.Iterator it
        end local 6 // org.hsqldb.rights.Right existingRight
        end local 5 // org.hsqldb.rights.Right grantableRights
        end local 4 // boolean withGrant
        end local 3 // org.hsqldb.rights.Grantee grantor
        end local 2 // org.hsqldb.rights.Right right
        end local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   31     0             this  Lorg/hsqldb/rights/Grantee;
            0   31     1             name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            0   31     2            right  Lorg/hsqldb/rights/Right;
            0   31     3          grantor  Lorg/hsqldb/rights/Grantee;
            0   31     4        withGrant  Z
            1   31     5  grantableRights  Lorg/hsqldb/rights/Right;
            2   31     6    existingRight  Lorg/hsqldb/rights/Right;
           10   31     7               it  Lorg/hsqldb/lib/Iterator;
           12   16     8         existing  Lorg/hsqldb/rights/Right;
    MethodParameters:
           Name  Flags
      name       
      right      
      grantor    
      withGrant  

  void revoke(org.hsqldb.SchemaObject, org.hsqldb.rights.Right, org.hsqldb.rights.Grantee, boolean);
    descriptor: (Lorg/hsqldb/SchemaObject;Lorg/hsqldb/rights/Right;Lorg/hsqldb/rights/Grantee;Z)V
    flags: (0x0000) 
    Code:
      stack=3, locals=8, args_size=5
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
        start local 2 // org.hsqldb.rights.Right right
        start local 3 // org.hsqldb.rights.Grantee grantor
        start local 4 // boolean grantOption
         0: .line 371
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 5 /* name */
        start local 5 // org.hsqldb.HsqlNameManager$HsqlName name
         1: .line 373
            aload 1 /* object */
            instanceof org.hsqldb.Routine
            ifeq 3
         2: .line 374
            aload 1 /* object */
            checkcast org.hsqldb.Routine
            invokevirtual org.hsqldb.Routine.getSpecificName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 5 /* name */
         3: .line 377
      StackMap locals: org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 5 /* name */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.get:(Ljava/lang/Object;)Lorg/hsqldb/lib/Iterator;
            astore 6 /* it */
        start local 6 // org.hsqldb.lib.Iterator it
         4: .line 378
            aconst_null
            astore 7 /* existing */
        start local 7 // org.hsqldb.rights.Right existing
         5: .line 380
            goto 9
         6: .line 381
      StackMap locals: org.hsqldb.lib.Iterator org.hsqldb.rights.Right
      StackMap stack:
            aload 6 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 7 /* existing */
         7: .line 383
            aload 7 /* existing */
            getfield org.hsqldb.rights.Right.grantor:Lorg/hsqldb/rights/Grantee;
            aload 3 /* grantor */
            if_acmpne 9
         8: .line 384
            goto 10
         9: .line 380
      StackMap locals:
      StackMap stack:
            aload 6 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 6
        10: .line 388
      StackMap locals:
      StackMap stack:
            aload 7 /* existing */
            ifnonnull 12
        11: .line 389
            return
        12: .line 392
      StackMap locals:
      StackMap stack:
            aload 7 /* existing */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            ifnull 14
        13: .line 393
            aload 7 /* existing */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            aload 1 /* object */
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.remove:(Lorg/hsqldb/SchemaObject;Lorg/hsqldb/rights/Right;)V
        14: .line 396
      StackMap locals:
      StackMap stack:
            iload 4 /* grantOption */
            ifeq 16
        15: .line 397
            return
        16: .line 400
      StackMap locals:
      StackMap stack:
            aload 2 /* right */
            getfield org.hsqldb.rights.Right.isFull:Z
            ifeq 21
        17: .line 401
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 5 /* name */
            aload 7 /* existing */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 402
            aload 3 /* grantor */
            getfield org.hsqldb.rights.Grantee.grantedRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 5 /* name */
            aload 7 /* existing */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        19: .line 403
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.updateAllRights:()V
        20: .line 405
            return
        21: .line 408
      StackMap locals:
      StackMap stack:
            aload 7 /* existing */
            aload 1 /* object */
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.remove:(Lorg/hsqldb/SchemaObject;Lorg/hsqldb/rights/Right;)V
        22: .line 410
            aload 7 /* existing */
            invokevirtual org.hsqldb.rights.Right.isEmpty:()Z
            ifeq 25
        23: .line 411
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 5 /* name */
            aload 7 /* existing */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        24: .line 412
            aload 3 /* grantor */
            getfield org.hsqldb.rights.Grantee.grantedRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 5 /* name */
            aload 7 /* existing */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 415
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.updateAllRights:()V
        26: .line 416
            return
        end local 7 // org.hsqldb.rights.Right existing
        end local 6 // org.hsqldb.lib.Iterator it
        end local 5 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 4 // boolean grantOption
        end local 3 // org.hsqldb.rights.Grantee grantor
        end local 2 // org.hsqldb.rights.Right right
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   27     0         this  Lorg/hsqldb/rights/Grantee;
            0   27     1       object  Lorg/hsqldb/SchemaObject;
            0   27     2        right  Lorg/hsqldb/rights/Right;
            0   27     3      grantor  Lorg/hsqldb/rights/Grantee;
            0   27     4  grantOption  Z
            1   27     5         name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            4   27     6           it  Lorg/hsqldb/lib/Iterator;
            5   27     7     existing  Lorg/hsqldb/rights/Right;
    MethodParameters:
             Name  Flags
      object       
      right        
      grantor      
      grantOption  

  void revokeDbObject(org.hsqldb.HsqlNameManager$HsqlName);
    descriptor: (Lorg/hsqldb/HsqlNameManager$HsqlName;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.HsqlNameManager$HsqlName name
         0: .line 425
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 1 /* name */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 426
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.grantedRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 1 /* name */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 427
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 1 /* name */
            invokevirtual org.hsqldb.lib.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 428
            return
        end local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/hsqldb/rights/Grantee;
            0    4     1  name  Lorg/hsqldb/HsqlNameManager$HsqlName;
    MethodParameters:
      Name  Flags
      name  

  void updateRightsForNewColumn(org.hsqldb.HsqlNameManager$HsqlName, org.hsqldb.HsqlNameManager$HsqlName);
    descriptor: (Lorg/hsqldb/HsqlNameManager$HsqlName;Lorg/hsqldb/HsqlNameManager$HsqlName;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.HsqlNameManager$HsqlName tableName
        start local 2 // org.hsqldb.HsqlNameManager$HsqlName columnName
         0: .line 435
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 1 /* tableName */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.get:(Ljava/lang/Object;)Lorg/hsqldb/lib/Iterator;
            astore 3 /* it */
        start local 3 // org.hsqldb.lib.Iterator it
         1: .line 436
            aconst_null
            astore 4 /* existing */
        start local 4 // org.hsqldb.rights.Right existing
         2: .line 438
            goto 4
         3: .line 439
      StackMap locals: org.hsqldb.lib.Iterator org.hsqldb.rights.Right
      StackMap stack:
            aload 3 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 4 /* existing */
         4: .line 438
      StackMap locals:
      StackMap stack:
            aload 3 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 3
         5: .line 442
            aload 4 /* existing */
            ifnonnull 7
         6: .line 443
            return
         7: .line 446
      StackMap locals:
      StackMap stack:
            aload 4 /* existing */
            aload 2 /* columnName */
            invokevirtual org.hsqldb.rights.Right.addNewColumn:(Lorg/hsqldb/HsqlNameManager$HsqlName;)V
         8: .line 447
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.updateAllRights:()V
         9: .line 448
            return
        end local 4 // org.hsqldb.rights.Right existing
        end local 3 // org.hsqldb.lib.Iterator it
        end local 2 // org.hsqldb.HsqlNameManager$HsqlName columnName
        end local 1 // org.hsqldb.HsqlNameManager$HsqlName tableName
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/hsqldb/rights/Grantee;
            0   10     1   tableName  Lorg/hsqldb/HsqlNameManager$HsqlName;
            0   10     2  columnName  Lorg/hsqldb/HsqlNameManager$HsqlName;
            1   10     3          it  Lorg/hsqldb/lib/Iterator;
            2   10     4    existing  Lorg/hsqldb/rights/Right;
    MethodParameters:
            Name  Flags
      tableName   
      columnName  

  void updateRightsForNewColumn(org.hsqldb.HsqlNameManager$HsqlName);
    descriptor: (Lorg/hsqldb/HsqlNameManager$HsqlName;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.HsqlNameManager$HsqlName tableName
         0: .line 455
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.grantedRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 1 /* tableName */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.get:(Ljava/lang/Object;)Lorg/hsqldb/lib/Iterator;
            astore 2 /* it */
        start local 2 // org.hsqldb.lib.Iterator it
         1: .line 456
            aconst_null
            astore 3 /* existing */
        start local 3 // org.hsqldb.rights.Right existing
         2: .line 458
            goto 4
         3: .line 459
      StackMap locals: org.hsqldb.lib.Iterator org.hsqldb.rights.Right
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 3 /* existing */
         4: .line 458
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 3
         5: .line 462
            aload 3 /* existing */
            ifnonnull 7
         6: .line 463
            return
         7: .line 466
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.updateAllRights:()V
         8: .line 467
            return
        end local 3 // org.hsqldb.rights.Right existing
        end local 2 // org.hsqldb.lib.Iterator it
        end local 1 // org.hsqldb.HsqlNameManager$HsqlName tableName
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lorg/hsqldb/rights/Grantee;
            0    9     1  tableName  Lorg/hsqldb/HsqlNameManager$HsqlName;
            1    9     2         it  Lorg/hsqldb/lib/Iterator;
            2    9     3   existing  Lorg/hsqldb/rights/Right;
    MethodParameters:
           Name  Flags
      tableName  

  void clearPrivileges();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 475
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.clear:()V
         1: .line 476
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            invokevirtual org.hsqldb.lib.MultiValueHashMap.clear:()V
         2: .line 477
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.grantedRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            invokevirtual org.hsqldb.lib.MultiValueHashMap.clear:()V
         3: .line 478
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            invokevirtual org.hsqldb.lib.HashMap.clear:()V
         4: .line 480
            aload 0 /* this */
            iconst_0
            putfield org.hsqldb.rights.Grantee.isAdmin:Z
         5: .line 481
            return
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.lib.OrderedHashSet getColumnsForAllPrivileges(org.hsqldb.SchemaObject);
    descriptor: (Lorg/hsqldb/SchemaObject;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
         0: .line 485
            aload 1 /* object */
            instanceof org.hsqldb.Table
            ifeq 8
         1: .line 486
            aload 1 /* object */
            checkcast org.hsqldb.Table
            astore 2 /* table */
        start local 2 // org.hsqldb.Table table
         2: .line 488
            aload 0 /* this */
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 4
         3: .line 489
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.getColumnNameSet:()Lorg/hsqldb/lib/OrderedHashSet;
            areturn
         4: .line 492
      StackMap locals: org.hsqldb.Table
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 3 /* right */
        start local 3 // org.hsqldb.rights.Right right
         5: .line 494
            aload 3 /* right */
            ifnonnull 6
            getstatic org.hsqldb.rights.Right.emptySet:Lorg/hsqldb/lib/OrderedHashSet;
            goto 7
         6: .line 495
      StackMap locals: org.hsqldb.rights.Right
      StackMap stack:
            aload 3 /* right */
            aload 2 /* table */
            invokevirtual org.hsqldb.rights.Right.getColumnsForAllRights:(Lorg/hsqldb/Table;)Lorg/hsqldb/lib/OrderedHashSet;
         7: .line 494
      StackMap locals:
      StackMap stack: org.hsqldb.lib.OrderedHashSet
            areturn
        end local 3 // org.hsqldb.rights.Right right
        end local 2 // org.hsqldb.Table table
         8: .line 498
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.rights.Right.emptySet:Lorg/hsqldb/lib/OrderedHashSet;
            areturn
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/hsqldb/rights/Grantee;
            0    9     1  object  Lorg/hsqldb/SchemaObject;
            2    8     2   table  Lorg/hsqldb/Table;
            5    8     3   right  Lorg/hsqldb/rights/Right;
    MethodParameters:
        Name  Flags
      object  

  public org.hsqldb.lib.OrderedHashSet getAllDirectPrivileges(org.hsqldb.SchemaObject);
    descriptor: (Lorg/hsqldb/SchemaObject;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
         0: .line 503
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getOwner:()Lorg/hsqldb/rights/Grantee;
            aload 0 /* this */
            if_acmpne 4
         1: .line 504
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 2 /* set */
        start local 2 // org.hsqldb.lib.OrderedHashSet set
         2: .line 506
            aload 2 /* set */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.ownerRights:Lorg/hsqldb/rights/Right;
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 508
            aload 2 /* set */
            areturn
        end local 2 // org.hsqldb.lib.OrderedHashSet set
         4: .line 511
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 2 /* name */
        start local 2 // org.hsqldb.HsqlNameManager$HsqlName name
         5: .line 513
            aload 1 /* object */
            instanceof org.hsqldb.Routine
            ifeq 7
         6: .line 514
            aload 1 /* object */
            checkcast org.hsqldb.Routine
            invokevirtual org.hsqldb.Routine.getSpecificName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 2 /* name */
         7: .line 517
      StackMap locals: org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 2 /* name */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.get:(Ljava/lang/Object;)Lorg/hsqldb/lib/Iterator;
            astore 3 /* rights */
        start local 3 // org.hsqldb.lib.Iterator rights
         8: .line 519
            aload 3 /* rights */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifeq 14
         9: .line 520
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 4 /* set */
        start local 4 // org.hsqldb.lib.OrderedHashSet set
        10: .line 522
            goto 12
        11: .line 523
      StackMap locals: org.hsqldb.lib.Iterator org.hsqldb.lib.OrderedHashSet
      StackMap stack:
            aload 4 /* set */
            aload 3 /* rights */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
        12: .line 522
      StackMap locals:
      StackMap stack:
            aload 3 /* rights */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 11
        13: .line 526
            aload 4 /* set */
            areturn
        end local 4 // org.hsqldb.lib.OrderedHashSet set
        14: .line 529
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.rights.Right.emptySet:Lorg/hsqldb/lib/OrderedHashSet;
            areturn
        end local 3 // org.hsqldb.lib.Iterator rights
        end local 2 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Lorg/hsqldb/rights/Grantee;
            0   15     1  object  Lorg/hsqldb/SchemaObject;
            2    4     2     set  Lorg/hsqldb/lib/OrderedHashSet;
            5   15     2    name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            8   15     3  rights  Lorg/hsqldb/lib/Iterator;
           10   14     4     set  Lorg/hsqldb/lib/OrderedHashSet;
    MethodParameters:
        Name  Flags
      object  

  public org.hsqldb.lib.OrderedHashSet getAllGrantedPrivileges(org.hsqldb.SchemaObject);
    descriptor: (Lorg/hsqldb/SchemaObject;)Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
         0: .line 534
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 2 /* name */
        start local 2 // org.hsqldb.HsqlNameManager$HsqlName name
         1: .line 536
            aload 1 /* object */
            instanceof org.hsqldb.Routine
            ifeq 3
         2: .line 537
            aload 1 /* object */
            checkcast org.hsqldb.Routine
            invokevirtual org.hsqldb.Routine.getSpecificName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 2 /* name */
         3: .line 540
      StackMap locals: org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.grantedRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            aload 2 /* name */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.get:(Ljava/lang/Object;)Lorg/hsqldb/lib/Iterator;
            astore 3 /* rights */
        start local 3 // org.hsqldb.lib.Iterator rights
         4: .line 542
            aload 3 /* rights */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifeq 10
         5: .line 543
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 4 /* set */
        start local 4 // org.hsqldb.lib.OrderedHashSet set
         6: .line 545
            goto 8
         7: .line 546
      StackMap locals: org.hsqldb.lib.Iterator org.hsqldb.lib.OrderedHashSet
      StackMap stack:
            aload 4 /* set */
            aload 3 /* rights */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
         8: .line 545
      StackMap locals:
      StackMap stack:
            aload 3 /* rights */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 7
         9: .line 549
            aload 4 /* set */
            areturn
        end local 4 // org.hsqldb.lib.OrderedHashSet set
        10: .line 552
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.rights.Right.emptySet:Lorg/hsqldb/lib/OrderedHashSet;
            areturn
        end local 3 // org.hsqldb.lib.Iterator rights
        end local 2 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lorg/hsqldb/rights/Grantee;
            0   11     1  object  Lorg/hsqldb/SchemaObject;
            1   11     2    name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            4   11     3  rights  Lorg/hsqldb/lib/Iterator;
            6   10     4     set  Lorg/hsqldb/lib/OrderedHashSet;
    MethodParameters:
        Name  Flags
      object  

  public org.hsqldb.rights.Right checkSelect(org.hsqldb.SchemaObject, boolean[]);
    descriptor: (Lorg/hsqldb/SchemaObject;[Z)Lorg/hsqldb/rights/Right;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
        start local 2 // boolean[] checkList
         0: .line 564
            aload 1 /* object */
            instanceof org.hsqldb.Table
            ifeq 7
         1: .line 565
            aload 1 /* object */
            checkcast org.hsqldb.Table
            astore 3 /* table */
        start local 3 // org.hsqldb.Table table
         2: .line 567
            aload 0 /* this */
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 4
         3: .line 568
            getstatic org.hsqldb.rights.Right.fullRights:Lorg/hsqldb/rights/Right;
            areturn
         4: .line 571
      StackMap locals: org.hsqldb.Table
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 4 /* right */
        start local 4 // org.hsqldb.rights.Right right
         5: .line 573
            aload 4 /* right */
            ifnull 7
            aload 4 /* right */
            aload 3 /* table */
            aload 2 /* checkList */
            invokevirtual org.hsqldb.rights.Right.canSelect:(Lorg/hsqldb/Table;[Z)Z
            ifeq 7
         6: .line 574
            aload 4 /* right */
            areturn
        end local 4 // org.hsqldb.rights.Right right
        end local 3 // org.hsqldb.Table table
         7: .line 578
      StackMap locals:
      StackMap stack:
            sipush 5501
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 2 // boolean[] checkList
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/hsqldb/rights/Grantee;
            0    8     1     object  Lorg/hsqldb/SchemaObject;
            0    8     2  checkList  [Z
            2    7     3      table  Lorg/hsqldb/Table;
            5    7     4      right  Lorg/hsqldb/rights/Right;
    MethodParameters:
           Name  Flags
      object     
      checkList  

  public void checkInsert(org.hsqldb.SchemaObject, boolean[]);
    descriptor: (Lorg/hsqldb/SchemaObject;[Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
        start local 2 // boolean[] checkList
         0: .line 583
            aload 1 /* object */
            instanceof org.hsqldb.Table
            ifeq 7
         1: .line 584
            aload 1 /* object */
            checkcast org.hsqldb.Table
            astore 3 /* table */
        start local 3 // org.hsqldb.Table table
         2: .line 586
            aload 0 /* this */
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 4
         3: .line 587
            return
         4: .line 590
      StackMap locals: org.hsqldb.Table
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 4 /* right */
        start local 4 // org.hsqldb.rights.Right right
         5: .line 592
            aload 4 /* right */
            ifnull 7
            aload 4 /* right */
            aload 3 /* table */
            aload 2 /* checkList */
            invokevirtual org.hsqldb.rights.Right.canInsert:(Lorg/hsqldb/Table;[Z)Z
            ifeq 7
         6: .line 593
            return
        end local 4 // org.hsqldb.rights.Right right
        end local 3 // org.hsqldb.Table table
         7: .line 597
      StackMap locals:
      StackMap stack:
            sipush 5501
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 2 // boolean[] checkList
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/hsqldb/rights/Grantee;
            0    8     1     object  Lorg/hsqldb/SchemaObject;
            0    8     2  checkList  [Z
            2    7     3      table  Lorg/hsqldb/Table;
            5    7     4      right  Lorg/hsqldb/rights/Right;
    MethodParameters:
           Name  Flags
      object     
      checkList  

  public void checkUpdate(org.hsqldb.SchemaObject, boolean[]);
    descriptor: (Lorg/hsqldb/SchemaObject;[Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
        start local 2 // boolean[] checkList
         0: .line 602
            aload 1 /* object */
            instanceof org.hsqldb.Table
            ifeq 7
         1: .line 603
            aload 1 /* object */
            checkcast org.hsqldb.Table
            astore 3 /* table */
        start local 3 // org.hsqldb.Table table
         2: .line 605
            aload 0 /* this */
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 4
         3: .line 606
            return
         4: .line 609
      StackMap locals: org.hsqldb.Table
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 4 /* right */
        start local 4 // org.hsqldb.rights.Right right
         5: .line 611
            aload 4 /* right */
            ifnull 7
            aload 4 /* right */
            aload 3 /* table */
            aload 2 /* checkList */
            invokevirtual org.hsqldb.rights.Right.canUpdate:(Lorg/hsqldb/Table;[Z)Z
            ifeq 7
         6: .line 612
            return
        end local 4 // org.hsqldb.rights.Right right
        end local 3 // org.hsqldb.Table table
         7: .line 616
      StackMap locals:
      StackMap stack:
            sipush 5501
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 2 // boolean[] checkList
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/hsqldb/rights/Grantee;
            0    8     1     object  Lorg/hsqldb/SchemaObject;
            0    8     2  checkList  [Z
            2    7     3      table  Lorg/hsqldb/Table;
            5    7     4      right  Lorg/hsqldb/rights/Right;
    MethodParameters:
           Name  Flags
      object     
      checkList  

  public void checkReferences(org.hsqldb.SchemaObject, boolean[]);
    descriptor: (Lorg/hsqldb/SchemaObject;[Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
        start local 2 // boolean[] checkList
         0: .line 621
            aload 1 /* object */
            instanceof org.hsqldb.Table
            ifeq 7
         1: .line 622
            aload 1 /* object */
            checkcast org.hsqldb.Table
            astore 3 /* table */
        start local 3 // org.hsqldb.Table table
         2: .line 624
            aload 0 /* this */
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 4
         3: .line 625
            return
         4: .line 628
      StackMap locals: org.hsqldb.Table
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 4 /* right */
        start local 4 // org.hsqldb.rights.Right right
         5: .line 630
            aload 4 /* right */
            ifnull 7
            aload 4 /* right */
            aload 3 /* table */
            aload 2 /* checkList */
            invokevirtual org.hsqldb.rights.Right.canReference:(Lorg/hsqldb/Table;[Z)Z
            ifeq 7
         6: .line 631
            return
        end local 4 // org.hsqldb.rights.Right right
        end local 3 // org.hsqldb.Table table
         7: .line 635
      StackMap locals:
      StackMap stack:
            sipush 5501
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 2 // boolean[] checkList
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/hsqldb/rights/Grantee;
            0    8     1     object  Lorg/hsqldb/SchemaObject;
            0    8     2  checkList  [Z
            2    7     3      table  Lorg/hsqldb/Table;
            5    7     4      right  Lorg/hsqldb/rights/Right;
    MethodParameters:
           Name  Flags
      object     
      checkList  

  public void checkTrigger(org.hsqldb.SchemaObject, boolean[]);
    descriptor: (Lorg/hsqldb/SchemaObject;[Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
        start local 2 // boolean[] checkList
         0: .line 640
            aload 1 /* object */
            instanceof org.hsqldb.Table
            ifeq 7
         1: .line 641
            aload 1 /* object */
            checkcast org.hsqldb.Table
            astore 3 /* table */
        start local 3 // org.hsqldb.Table table
         2: .line 643
            aload 0 /* this */
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 4
         3: .line 644
            return
         4: .line 647
      StackMap locals: org.hsqldb.Table
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 4 /* right */
        start local 4 // org.hsqldb.rights.Right right
         5: .line 649
            aload 4 /* right */
            ifnull 7
            aload 4 /* right */
            aload 3 /* table */
            aload 2 /* checkList */
            invokevirtual org.hsqldb.rights.Right.canReference:(Lorg/hsqldb/Table;[Z)Z
            ifeq 7
         6: .line 650
            return
        end local 4 // org.hsqldb.rights.Right right
        end local 3 // org.hsqldb.Table table
         7: .line 654
      StackMap locals:
      StackMap stack:
            sipush 5501
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 2 // boolean[] checkList
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/hsqldb/rights/Grantee;
            0    8     1     object  Lorg/hsqldb/SchemaObject;
            0    8     2  checkList  [Z
            2    7     3      table  Lorg/hsqldb/Table;
            5    7     4      right  Lorg/hsqldb/rights/Right;
    MethodParameters:
           Name  Flags
      object     
      checkList  

  public void checkDelete(org.hsqldb.SchemaObject);
    descriptor: (Lorg/hsqldb/SchemaObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
         0: .line 659
            aload 1 /* object */
            instanceof org.hsqldb.Table
            ifeq 7
         1: .line 660
            aload 1 /* object */
            checkcast org.hsqldb.Table
            astore 2 /* table */
        start local 2 // org.hsqldb.Table table
         2: .line 662
            aload 0 /* this */
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 4
         3: .line 663
            return
         4: .line 666
      StackMap locals: org.hsqldb.Table
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 2 /* table */
            invokevirtual org.hsqldb.Table.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 3 /* right */
        start local 3 // org.hsqldb.rights.Right right
         5: .line 668
            aload 3 /* right */
            ifnull 7
            aload 3 /* right */
            invokevirtual org.hsqldb.rights.Right.canDelete:()Z
            ifeq 7
         6: .line 669
            return
        end local 3 // org.hsqldb.rights.Right right
        end local 2 // org.hsqldb.Table table
         7: .line 673
      StackMap locals:
      StackMap stack:
            sipush 5501
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lorg/hsqldb/rights/Grantee;
            0    8     1  object  Lorg/hsqldb/SchemaObject;
            2    7     2   table  Lorg/hsqldb/Table;
            5    7     3   right  Lorg/hsqldb/rights/Right;
    MethodParameters:
        Name  Flags
      object  

  public void checkAccess(org.hsqldb.SchemaObject);
    descriptor: (Lorg/hsqldb/SchemaObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
         0: .line 678
            aload 0 /* this */
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 2
         1: .line 679
            return
         2: .line 682
      StackMap locals:
      StackMap stack:
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 2 /* name */
        start local 2 // org.hsqldb.HsqlNameManager$HsqlName name
         3: .line 684
            aload 1 /* object */
            instanceof org.hsqldb.Routine
            ifeq 5
         4: .line 685
            aload 1 /* object */
            checkcast org.hsqldb.Routine
            invokevirtual org.hsqldb.Routine.getSpecificName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            astore 2 /* name */
         5: .line 688
      StackMap locals: org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 2 /* name */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 3 /* right */
        start local 3 // org.hsqldb.rights.Right right
         6: .line 690
            aload 3 /* right */
            ifnull 8
            aload 3 /* right */
            invokevirtual org.hsqldb.rights.Right.isEmpty:()Z
            ifne 8
         7: .line 691
            return
         8: .line 694
      StackMap locals: org.hsqldb.rights.Right
      StackMap stack:
            sipush 5501
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
        end local 3 // org.hsqldb.rights.Right right
        end local 2 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/hsqldb/rights/Grantee;
            0    9     1  object  Lorg/hsqldb/SchemaObject;
            3    9     2    name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            6    9     3   right  Lorg/hsqldb/rights/Right;
    MethodParameters:
        Name  Flags
      object  

  public void checkSchemaUpdateOrGrantRights(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // java.lang.String schemaName
         0: .line 703
            aload 0 /* this */
            aload 1 /* schemaName */
            invokevirtual org.hsqldb.rights.Grantee.hasSchemaUpdateOrGrantRights:(Ljava/lang/String;)Z
            ifne 2
         1: .line 704
            sipush 5501
            aload 1 /* schemaName */
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
         2: .line 706
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String schemaName
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/hsqldb/rights/Grantee;
            0    3     1  schemaName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      schemaName  

  public boolean hasSchemaUpdateOrGrantRights(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // java.lang.String schemaName
         0: .line 715
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.isAdmin:()Z
            ifeq 2
         1: .line 716
            iconst_1
            ireturn
         2: .line 720
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.database:Lorg/hsqldb/Database;
            getfield org.hsqldb.Database.schemaManager:Lorg/hsqldb/SchemaManager;
            aload 1 /* schemaName */
            invokevirtual org.hsqldb.SchemaManager.toSchemaOwner:(Ljava/lang/String;)Lorg/hsqldb/rights/Grantee;
         3: .line 719
            astore 2 /* schemaOwner */
        start local 2 // org.hsqldb.rights.Grantee schemaOwner
         4: .line 723
            aload 2 /* schemaOwner */
            aload 0 /* this */
            if_acmpne 6
         5: .line 724
            iconst_1
            ireturn
         6: .line 728
      StackMap locals: org.hsqldb.rights.Grantee
      StackMap stack:
            aload 0 /* this */
            aload 2 /* schemaOwner */
            invokevirtual org.hsqldb.rights.Grantee.hasRole:(Lorg/hsqldb/rights/Grantee;)Z
            ifeq 8
         7: .line 729
            iconst_1
            ireturn
         8: .line 732
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.hsqldb.rights.Grantee schemaOwner
        end local 1 // java.lang.String schemaName
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/hsqldb/rights/Grantee;
            0    9     1   schemaName  Ljava/lang/String;
            4    9     2  schemaOwner  Lorg/hsqldb/rights/Grantee;
    MethodParameters:
            Name  Flags
      schemaName  

  public boolean isGrantable(org.hsqldb.SchemaObject, org.hsqldb.rights.Right);
    descriptor: (Lorg/hsqldb/SchemaObject;Lorg/hsqldb/rights/Right;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject object
        start local 2 // org.hsqldb.rights.Right right
         0: .line 737
            aload 0 /* this */
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 2
         1: .line 738
            iconst_1
            ireturn
         2: .line 741
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* object */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.getAllGrantableRights:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Lorg/hsqldb/rights/Right;
            astore 3 /* grantableRights */
        start local 3 // org.hsqldb.rights.Right grantableRights
         3: .line 743
            aload 3 /* grantableRights */
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.contains:(Lorg/hsqldb/rights/Right;)Z
            ireturn
        end local 3 // org.hsqldb.rights.Right grantableRights
        end local 2 // org.hsqldb.rights.Right right
        end local 1 // org.hsqldb.SchemaObject object
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Lorg/hsqldb/rights/Grantee;
            0    4     1           object  Lorg/hsqldb/SchemaObject;
            0    4     2            right  Lorg/hsqldb/rights/Right;
            3    4     3  grantableRights  Lorg/hsqldb/rights/Right;
    MethodParameters:
        Name  Flags
      object  
      right   

  public boolean isGrantable(org.hsqldb.rights.Grantee);
    descriptor: (Lorg/hsqldb/rights/Grantee;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.rights.Grantee role
         0: .line 747
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isAdmin:Z
            ireturn
        end local 1 // org.hsqldb.rights.Grantee role
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;
            0    1     1  role  Lorg/hsqldb/rights/Grantee;
    MethodParameters:
      Name  Flags
      role  

  public boolean isFullyAccessibleByRole(org.hsqldb.HsqlNameManager$HsqlName);
    descriptor: (Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.HsqlNameManager$HsqlName name
         0: .line 754
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isAdmin:Z
            ifeq 2
         1: .line 755
            iconst_1
            ireturn
         2: .line 758
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.type:I
            iconst_2
            if_icmpne 5
         3: .line 759
            aload 1 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.owner:Lorg/hsqldb/rights/Grantee;
            astore 2 /* owner */
        start local 2 // org.hsqldb.rights.Grantee owner
         4: .line 760
            goto 8
        end local 2 // org.hsqldb.rights.Grantee owner
      StackMap locals:
      StackMap stack:
         5: aload 1 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            ifnonnull 7
         6: .line 761
            iconst_0
            ireturn
         7: .line 763
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.owner:Lorg/hsqldb/rights/Grantee;
            astore 2 /* owner */
        start local 2 // org.hsqldb.rights.Grantee owner
         8: .line 766
      StackMap locals: org.hsqldb.rights.Grantee
      StackMap stack:
            aload 2 /* owner */
            aload 0 /* this */
            if_acmpne 10
         9: .line 767
            iconst_1
            ireturn
        10: .line 770
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* owner */
            invokevirtual org.hsqldb.rights.Grantee.hasRole:(Lorg/hsqldb/rights/Grantee;)Z
            ifeq 12
        11: .line 771
            iconst_1
            ireturn
        12: .line 774
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // org.hsqldb.rights.Grantee owner
        end local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0   this  Lorg/hsqldb/rights/Grantee;
            0   13     1   name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            4    5     2  owner  Lorg/hsqldb/rights/Grantee;
            8   13     2  owner  Lorg/hsqldb/rights/Grantee;
    MethodParameters:
      Name  Flags
      name  

  public void checkAdmin();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 783
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.isAdmin:()Z
            ifne 2
         1: .line 784
            sipush 5507
            invokestatic org.hsqldb.error.Error.error:(I)Lorg/hsqldb/HsqlException;
            athrow
         2: .line 786
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/hsqldb/rights/Grantee;

  public boolean isAdmin();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 793
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isAdmin:Z
            ireturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public boolean isSchemaCreator();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 800
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isAdmin:Z
            ifne 1
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.schemaRole:Lorg/hsqldb/rights/Grantee;
            invokevirtual org.hsqldb.rights.Grantee.hasRole:(Lorg/hsqldb/rights/Grantee;)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/rights/Grantee;

  public boolean canChangeAuthorisation();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 807
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isAdmin:Z
            ifne 1
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.changeAuthRole:Lorg/hsqldb/rights/Grantee;
            invokevirtual org.hsqldb.rights.Grantee.hasRole:(Lorg/hsqldb/rights/Grantee;)Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/rights/Grantee;

  public boolean isPublic();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 814
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isPublic:Z
            ireturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  public org.hsqldb.lib.OrderedHashSet visibleGrantees();
    descriptor: ()Lorg/hsqldb/lib/OrderedHashSet;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 826
            new org.hsqldb.lib.OrderedHashSet
            dup
            invokespecial org.hsqldb.lib.OrderedHashSet.<init>:()V
            astore 1 /* grantees */
        start local 1 // org.hsqldb.lib.OrderedHashSet grantees
         1: .line 827
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            astore 2 /* gm */
        start local 2 // org.hsqldb.rights.GranteeManager gm
         2: .line 829
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.isAdmin:()Z
            ifeq 5
         3: .line 830
            aload 1 /* grantees */
            aload 2 /* gm */
            invokevirtual org.hsqldb.rights.GranteeManager.getGrantees:()Lorg/hsqldb/lib/Collection;
            invokevirtual org.hsqldb.lib.OrderedHashSet.addAll:(Lorg/hsqldb/lib/Collection;)Z
            pop
         4: .line 831
            goto 10
         5: .line 832
      StackMap locals: org.hsqldb.lib.OrderedHashSet org.hsqldb.rights.GranteeManager
      StackMap stack:
            aload 1 /* grantees */
            aload 0 /* this */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
         6: .line 834
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.getAllRoles:()Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.iterator:()Lorg/hsqldb/lib/Iterator;
            astore 3 /* it */
        start local 3 // org.hsqldb.lib.Iterator it
         7: .line 836
            goto 9
         8: .line 837
      StackMap locals: org.hsqldb.lib.Iterator
      StackMap stack:
            aload 1 /* grantees */
            aload 3 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
         9: .line 836
      StackMap locals:
      StackMap stack:
            aload 3 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 8
        end local 3 // org.hsqldb.lib.Iterator it
        10: .line 841
      StackMap locals:
      StackMap stack:
            aload 1 /* grantees */
            areturn
        end local 2 // org.hsqldb.rights.GranteeManager gm
        end local 1 // org.hsqldb.lib.OrderedHashSet grantees
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lorg/hsqldb/rights/Grantee;
            1   11     1  grantees  Lorg/hsqldb/lib/OrderedHashSet;
            2   11     2        gm  Lorg/hsqldb/rights/GranteeManager;
            7   10     3        it  Lorg/hsqldb/lib/Iterator;

  public boolean hasNonSelectTableRight(org.hsqldb.SchemaObject);
    descriptor: (Lorg/hsqldb/SchemaObject;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject table
         0: .line 846
            aload 0 /* this */
            aload 1 /* table */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 2
         1: .line 847
            iconst_1
            ireturn
         2: .line 850
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 1 /* table */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 2 /* right */
        start local 2 // org.hsqldb.rights.Right right
         3: .line 852
            aload 2 /* right */
            ifnonnull 5
         4: .line 853
            iconst_0
            ireturn
         5: .line 856
      StackMap locals: org.hsqldb.rights.Right
      StackMap stack:
            aload 2 /* right */
            invokevirtual org.hsqldb.rights.Right.canAccesssNonSelect:()Z
            ireturn
        end local 2 // org.hsqldb.rights.Right right
        end local 1 // org.hsqldb.SchemaObject table
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/hsqldb/rights/Grantee;
            0    6     1  table  Lorg/hsqldb/SchemaObject;
            3    6     2  right  Lorg/hsqldb/rights/Right;
    MethodParameters:
       Name  Flags
      table  

  public boolean hasColumnRights(org.hsqldb.SchemaObject, int[]);
    descriptor: (Lorg/hsqldb/SchemaObject;[I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.SchemaObject table
        start local 2 // int[] columnMap
         0: .line 861
            aload 0 /* this */
            aload 1 /* table */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.rights.Grantee.isFullyAccessibleByRole:(Lorg/hsqldb/HsqlNameManager$HsqlName;)Z
            ifeq 2
         1: .line 862
            iconst_1
            ireturn
         2: .line 865
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 1 /* table */
            invokeinterface org.hsqldb.SchemaObject.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 3 /* right */
        start local 3 // org.hsqldb.rights.Right right
         3: .line 867
            aload 3 /* right */
            ifnonnull 5
         4: .line 868
            iconst_0
            ireturn
         5: .line 871
      StackMap locals: org.hsqldb.rights.Right
      StackMap stack:
            aload 3 /* right */
            aload 1 /* table */
            checkcast org.hsqldb.Table
            aload 2 /* columnMap */
            invokevirtual org.hsqldb.rights.Right.canAccess:(Lorg/hsqldb/Table;[I)Z
            ireturn
        end local 3 // org.hsqldb.rights.Right right
        end local 2 // int[] columnMap
        end local 1 // org.hsqldb.SchemaObject table
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/hsqldb/rights/Grantee;
            0    6     1      table  Lorg/hsqldb/SchemaObject;
            0    6     2  columnMap  [I
            3    6     3      right  Lorg/hsqldb/rights/Right;
    MethodParameters:
           Name  Flags
      table      
      columnMap  

  void setAdminDirect();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 879
            aload 0 /* this */
            aload 0 /* this */
            iconst_1
            dup_x1
            putfield org.hsqldb.rights.Grantee.isAdminDirect:Z
            putfield org.hsqldb.rights.Grantee.isAdmin:Z
         1: .line 880
            return
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/rights/Grantee;

  boolean updateNestedRoles(org.hsqldb.rights.Grantee);
    descriptor: (Lorg/hsqldb/rights/Grantee;)Z
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.rights.Grantee role
         0: .line 912
            iconst_0
            istore 2 /* hasNested */
        start local 2 // boolean hasNested
         1: .line 914
            aload 1 /* role */
            aload 0 /* this */
            if_acmpeq 8
         2: .line 915
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 7
         4: .line 916
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Grantee
            astore 4 /* currentRole */
        start local 4 // org.hsqldb.rights.Grantee currentRole
         5: .line 918
            iload 2 /* hasNested */
            aload 4 /* currentRole */
            aload 1 /* role */
            invokevirtual org.hsqldb.rights.Grantee.updateNestedRoles:(Lorg/hsqldb/rights/Grantee;)Z
            ior
            istore 2 /* hasNested */
        end local 4 // org.hsqldb.rights.Grantee currentRole
         6: .line 915
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 4
        end local 3 // int i
         8: .line 922
      StackMap locals:
      StackMap stack:
            iload 2 /* hasNested */
            ifeq 10
         9: .line 923
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.updateAllRights:()V
        10: .line 926
      StackMap locals:
      StackMap stack:
            iload 2 /* hasNested */
            ifne 11
            aload 1 /* role */
            aload 0 /* this */
            if_acmpeq 11
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
        11: iconst_1
            ireturn
        end local 2 // boolean hasNested
        end local 1 // org.hsqldb.rights.Grantee role
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/hsqldb/rights/Grantee;
            0   12     1         role  Lorg/hsqldb/rights/Grantee;
            1   12     2    hasNested  Z
            3    8     3            i  I
            5    6     4  currentRole  Lorg/hsqldb/rights/Grantee;
    MethodParameters:
      Name  Flags
      role  

  void updateAllRights();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 941
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            invokevirtual org.hsqldb.lib.HashMap.clear:()V
         1: .line 943
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isAdminDirect:Z
            putfield org.hsqldb.rights.Grantee.isAdmin:Z
         2: .line 945
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         3: goto 8
         4: .line 946
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            iload 1 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Grantee
            astore 2 /* currentRole */
        start local 2 // org.hsqldb.rights.Grantee currentRole
         5: .line 948
            aload 0 /* this */
            aload 2 /* currentRole */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            invokevirtual org.hsqldb.rights.Grantee.addToFullRights:(Lorg/hsqldb/lib/HashMap;)V
         6: .line 950
            aload 0 /* this */
            dup
            getfield org.hsqldb.rights.Grantee.isAdmin:Z
            aload 2 /* currentRole */
            invokevirtual org.hsqldb.rights.Grantee.isAdmin:()Z
            ior
            putfield org.hsqldb.rights.Grantee.isAdmin:Z
        end local 2 // org.hsqldb.rights.Grantee currentRole
         7: .line 945
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 1 /* i */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 4
        end local 1 // int i
         9: .line 953
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            invokevirtual org.hsqldb.rights.Grantee.addToFullRights:(Lorg/hsqldb/lib/MultiValueHashMap;)V
        10: .line 955
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isRole:Z
            ifne 12
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isPublic:Z
            ifne 12
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isSystem:Z
            ifne 12
        11: .line 956
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.publicRole:Lorg/hsqldb/rights/Grantee;
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            invokevirtual org.hsqldb.rights.Grantee.addToFullRights:(Lorg/hsqldb/lib/HashMap;)V
        12: .line 958
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Lorg/hsqldb/rights/Grantee;
            3    9     1            i  I
            5    7     2  currentRole  Lorg/hsqldb/rights/Grantee;

  void addToFullRights(org.hsqldb.lib.HashMap);
    descriptor: (Lorg/hsqldb/lib/HashMap;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.lib.HashMap map
         0: .line 965
            aload 1 /* map */
            invokevirtual org.hsqldb.lib.HashMap.keySet:()Lorg/hsqldb/lib/Set;
            invokeinterface org.hsqldb.lib.Set.iterator:()Lorg/hsqldb/lib/Iterator;
            astore 2 /* it */
        start local 2 // org.hsqldb.lib.Iterator it
         1: .line 967
            goto 16
         2: .line 968
      StackMap locals: org.hsqldb.lib.Iterator
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            astore 3 /* key */
        start local 3 // java.lang.Object key
         3: .line 969
            aload 1 /* map */
            aload 3 /* key */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 4 /* add */
        start local 4 // org.hsqldb.rights.Right add
         4: .line 970
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* key */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 5 /* existing */
        start local 5 // org.hsqldb.rights.Right existing
         5: .line 972
            aload 5 /* existing */
            ifnonnull 9
         6: .line 973
            aload 4 /* add */
            invokevirtual org.hsqldb.rights.Right.duplicate:()Lorg/hsqldb/rights/Right;
            astore 5 /* existing */
         7: .line 975
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* key */
            aload 5 /* existing */
            invokevirtual org.hsqldb.lib.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 976
            goto 10
         9: .line 977
      StackMap locals: java.lang.Object org.hsqldb.rights.Right org.hsqldb.rights.Right
      StackMap stack:
            aload 5 /* existing */
            aload 4 /* add */
            invokevirtual org.hsqldb.rights.Right.add:(Lorg/hsqldb/rights/Right;)V
        10: .line 980
      StackMap locals:
      StackMap stack:
            aload 4 /* add */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            ifnonnull 12
        11: .line 981
            goto 16
        12: .line 984
      StackMap locals:
      StackMap stack:
            aload 5 /* existing */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            ifnonnull 15
        13: .line 985
            aload 5 /* existing */
            aload 4 /* add */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            invokevirtual org.hsqldb.rights.Right.duplicate:()Lorg/hsqldb/rights/Right;
            putfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
        14: .line 986
            goto 16
        15: .line 987
      StackMap locals:
      StackMap stack:
            aload 5 /* existing */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            aload 4 /* add */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            invokevirtual org.hsqldb.rights.Right.add:(Lorg/hsqldb/rights/Right;)V
        end local 5 // org.hsqldb.rights.Right existing
        end local 4 // org.hsqldb.rights.Right add
        end local 3 // java.lang.Object key
        16: .line 967
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 2
        17: .line 990
            return
        end local 2 // org.hsqldb.lib.Iterator it
        end local 1 // org.hsqldb.lib.HashMap map
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0      this  Lorg/hsqldb/rights/Grantee;
            0   18     1       map  Lorg/hsqldb/lib/HashMap;
            1   18     2        it  Lorg/hsqldb/lib/Iterator;
            3   16     3       key  Ljava/lang/Object;
            4   16     4       add  Lorg/hsqldb/rights/Right;
            5   16     5  existing  Lorg/hsqldb/rights/Right;
    MethodParameters:
      Name  Flags
      map   

  private void addToFullRights(org.hsqldb.lib.MultiValueHashMap);
    descriptor: (Lorg/hsqldb/lib/MultiValueHashMap;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.lib.MultiValueHashMap map
         0: .line 997
            aload 1 /* map */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.keySet:()Lorg/hsqldb/lib/Set;
            invokeinterface org.hsqldb.lib.Set.iterator:()Lorg/hsqldb/lib/Iterator;
            astore 2 /* it */
        start local 2 // org.hsqldb.lib.Iterator it
         1: .line 999
            goto 19
         2: .line 1000
      StackMap locals: org.hsqldb.lib.Iterator
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            astore 3 /* key */
        start local 3 // java.lang.Object key
         3: .line 1001
            aload 1 /* map */
            aload 3 /* key */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.get:(Ljava/lang/Object;)Lorg/hsqldb/lib/Iterator;
            astore 4 /* values */
        start local 4 // org.hsqldb.lib.Iterator values
         4: .line 1002
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* key */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 5 /* existing */
        start local 5 // org.hsqldb.rights.Right existing
         5: .line 1004
            goto 18
         6: .line 1005
      StackMap locals: java.lang.Object org.hsqldb.lib.Iterator org.hsqldb.rights.Right
      StackMap stack:
            aload 4 /* values */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 6 /* add */
        start local 6 // org.hsqldb.rights.Right add
         7: .line 1007
            aload 5 /* existing */
            ifnonnull 11
         8: .line 1008
            aload 6 /* add */
            invokevirtual org.hsqldb.rights.Right.duplicate:()Lorg/hsqldb/rights/Right;
            astore 5 /* existing */
         9: .line 1010
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* key */
            aload 5 /* existing */
            invokevirtual org.hsqldb.lib.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 1011
            goto 12
        11: .line 1012
      StackMap locals: org.hsqldb.rights.Right
      StackMap stack:
            aload 5 /* existing */
            aload 6 /* add */
            invokevirtual org.hsqldb.rights.Right.add:(Lorg/hsqldb/rights/Right;)V
        12: .line 1015
      StackMap locals:
      StackMap stack:
            aload 6 /* add */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            ifnonnull 14
        13: .line 1016
            goto 18
        14: .line 1019
      StackMap locals:
      StackMap stack:
            aload 5 /* existing */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            ifnonnull 17
        15: .line 1020
            aload 5 /* existing */
            aload 6 /* add */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            invokevirtual org.hsqldb.rights.Right.duplicate:()Lorg/hsqldb/rights/Right;
            putfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
        16: .line 1021
            goto 18
        17: .line 1022
      StackMap locals:
      StackMap stack:
            aload 5 /* existing */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            aload 6 /* add */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            invokevirtual org.hsqldb.rights.Right.add:(Lorg/hsqldb/rights/Right;)V
        end local 6 // org.hsqldb.rights.Right add
        18: .line 1004
      StackMap locals:
      StackMap stack:
            aload 4 /* values */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 6
        end local 5 // org.hsqldb.rights.Right existing
        end local 4 // org.hsqldb.lib.Iterator values
        end local 3 // java.lang.Object key
        19: .line 999
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 2
        20: .line 1026
            return
        end local 2 // org.hsqldb.lib.Iterator it
        end local 1 // org.hsqldb.lib.MultiValueHashMap map
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   21     0      this  Lorg/hsqldb/rights/Grantee;
            0   21     1       map  Lorg/hsqldb/lib/MultiValueHashMap;
            1   21     2        it  Lorg/hsqldb/lib/Iterator;
            3   19     3       key  Ljava/lang/Object;
            4   19     4    values  Lorg/hsqldb/lib/Iterator;
            5   19     5  existing  Lorg/hsqldb/rights/Right;
            7   18     6       add  Lorg/hsqldb/rights/Right;
    MethodParameters:
      Name  Flags
      map   

  org.hsqldb.rights.Right getAllGrantableRights(org.hsqldb.HsqlNameManager$HsqlName);
    descriptor: (Lorg/hsqldb/HsqlNameManager$HsqlName;)Lorg/hsqldb/rights/Right;
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.HsqlNameManager$HsqlName name
         0: .line 1030
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.isAdmin:Z
            ifeq 2
         1: .line 1031
            aload 1 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.owner:Lorg/hsqldb/rights/Grantee;
            getfield org.hsqldb.rights.Grantee.ownerRights:Lorg/hsqldb/rights/Right;
            areturn
         2: .line 1034
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.owner:Lorg/hsqldb/rights/Grantee;
            aload 0 /* this */
            if_acmpne 4
         3: .line 1035
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.ownerRights:Lorg/hsqldb/rights/Right;
            areturn
         4: .line 1038
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            aload 1 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.owner:Lorg/hsqldb/rights/Grantee;
            invokevirtual org.hsqldb.lib.OrderedHashSet.contains:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 1039
            aload 1 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.owner:Lorg/hsqldb/rights/Grantee;
            getfield org.hsqldb.rights.Grantee.ownerRights:Lorg/hsqldb/rights/Right;
            areturn
         6: .line 1042
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.getAllRoles:()Lorg/hsqldb/lib/OrderedHashSet;
            astore 2 /* set */
        start local 2 // org.hsqldb.lib.OrderedHashSet set
         7: .line 1044
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         8: goto 13
         9: .line 1045
      StackMap locals: org.hsqldb.lib.OrderedHashSet int
      StackMap stack:
            aload 2 /* set */
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Grantee
            astore 4 /* role */
        start local 4 // org.hsqldb.rights.Grantee role
        10: .line 1047
            aload 1 /* name */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.owner:Lorg/hsqldb/rights/Grantee;
            aload 4 /* role */
            if_acmpne 12
        11: .line 1048
            aload 4 /* role */
            getfield org.hsqldb.rights.Grantee.ownerRights:Lorg/hsqldb/rights/Right;
            areturn
        end local 4 // org.hsqldb.rights.Grantee role
        12: .line 1044
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 3 /* i */
            aload 2 /* set */
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 9
        end local 3 // int i
        14: .line 1052
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.fullRightsMap:Lorg/hsqldb/lib/HashMap;
            aload 1 /* name */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 3 /* right */
        start local 3 // org.hsqldb.rights.Right right
        15: .line 1054
            aload 3 /* right */
            ifnull 16
            aload 3 /* right */
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
            ifnonnull 17
      StackMap locals: org.hsqldb.rights.Grantee org.hsqldb.HsqlNameManager$HsqlName org.hsqldb.lib.OrderedHashSet org.hsqldb.rights.Right
      StackMap stack:
        16: getstatic org.hsqldb.rights.Right.noRights:Lorg/hsqldb/rights/Right;
            goto 19
        17: .line 1055
      StackMap locals:
      StackMap stack:
            aload 3 /* right */
        18: .line 1056
            getfield org.hsqldb.rights.Right.grantableRights:Lorg/hsqldb/rights/Right;
        19: .line 1054
      StackMap locals:
      StackMap stack: org.hsqldb.rights.Right
            areturn
        end local 3 // org.hsqldb.rights.Right right
        end local 2 // org.hsqldb.lib.OrderedHashSet set
        end local 1 // org.hsqldb.HsqlNameManager$HsqlName name
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   20     0   this  Lorg/hsqldb/rights/Grantee;
            0   20     1   name  Lorg/hsqldb/HsqlNameManager$HsqlName;
            7   20     2    set  Lorg/hsqldb/lib/OrderedHashSet;
            8   14     3      i  I
           10   12     4   role  Lorg/hsqldb/rights/Grantee;
           15   20     3  right  Lorg/hsqldb/rights/Right;
    MethodParameters:
      Name  Flags
      name  

  private org.hsqldb.lib.MultiValueHashMap getRights();
    descriptor: ()Lorg/hsqldb/lib/MultiValueHashMap;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 1078
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.directRightsMap:Lorg/hsqldb/lib/MultiValueHashMap;
            areturn
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/rights/Grantee;

  void grant(org.hsqldb.rights.Grantee);
    descriptor: (Lorg/hsqldb/rights/Grantee;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.rights.Grantee role
         0: .line 1085
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            aload 1 /* role */
            invokevirtual org.hsqldb.lib.OrderedHashSet.add:(Ljava/lang/Object;)Z
            pop
         1: .line 1086
            return
        end local 1 // org.hsqldb.rights.Grantee role
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/hsqldb/rights/Grantee;
            0    2     1  role  Lorg/hsqldb/rights/Grantee;
    MethodParameters:
      Name  Flags
      role  

  void revoke(org.hsqldb.rights.Grantee);
    descriptor: (Lorg/hsqldb/rights/Grantee;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.rights.Grantee role
         0: .line 1093
            aload 0 /* this */
            aload 1 /* role */
            invokevirtual org.hsqldb.rights.Grantee.hasRoleDirect:(Lorg/hsqldb/rights/Grantee;)Z
            ifne 4
         1: .line 1094
            sipush 2253
         2: .line 1095
            aload 1 /* role */
            invokevirtual org.hsqldb.rights.Grantee.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.HsqlNameManager$HsqlName.getNameString:()Ljava/lang/String;
         3: .line 1094
            invokestatic org.hsqldb.error.Error.error:(ILjava/lang/String;)Lorg/hsqldb/HsqlException;
            athrow
         4: .line 1098
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            aload 1 /* role */
            invokevirtual org.hsqldb.lib.OrderedHashSet.remove:(Ljava/lang/Object;)Z
            pop
         5: .line 1099
            return
        end local 1 // org.hsqldb.rights.Grantee role
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/hsqldb/rights/Grantee;
            0    6     1  role  Lorg/hsqldb/rights/Grantee;
    MethodParameters:
      Name  Flags
      role  

  private java.lang.String roleMapToString(org.hsqldb.lib.OrderedHashSet);
    descriptor: (Lorg/hsqldb/lib/OrderedHashSet;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.hsqldb.rights.Grantee this
        start local 1 // org.hsqldb.lib.OrderedHashSet roles
         0: .line 1103
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         1: .line 1105
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 8
         3: .line 1106
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 5
         4: .line 1107
            aload 2 /* sb */
            bipush 44
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         5: .line 1110
      StackMap locals:
      StackMap stack:
            aload 1 /* roles */
            iload 3 /* i */
            invokevirtual org.hsqldb.lib.OrderedHashSet.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.rights.Grantee
            astore 4 /* role */
        start local 4 // org.hsqldb.rights.Grantee role
         6: .line 1112
            aload 2 /* sb */
            aload 4 /* role */
            invokevirtual org.hsqldb.rights.Grantee.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.HsqlNameManager$HsqlName.getStatementName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 4 // org.hsqldb.rights.Grantee role
         7: .line 1105
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            aload 1 /* roles */
            invokevirtual org.hsqldb.lib.OrderedHashSet.size:()I
            if_icmplt 3
        end local 3 // int i
         9: .line 1115
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder sb
        end local 1 // org.hsqldb.lib.OrderedHashSet roles
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lorg/hsqldb/rights/Grantee;
            0   10     1  roles  Lorg/hsqldb/lib/OrderedHashSet;
            1   10     2     sb  Ljava/lang/StringBuilder;
            2    9     3      i  I
            6    7     4   role  Lorg/hsqldb/rights/Grantee;
    MethodParameters:
       Name  Flags
      roles  

  org.hsqldb.lib.HsqlArrayList getRightsSQL();
    descriptor: ()Lorg/hsqldb/lib/HsqlArrayList;
    flags: (0x0000) 
    Code:
      stack=4, locals=15, args_size=1
        start local 0 // org.hsqldb.rights.Grantee this
         0: .line 1120
            new org.hsqldb.lib.HsqlArrayList
            dup
            invokespecial org.hsqldb.lib.HsqlArrayList.<init>:()V
            astore 1 /* list */
        start local 1 // org.hsqldb.lib.HsqlArrayList list
         1: .line 1121
            aload 0 /* this */
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.roles:Lorg/hsqldb/lib/OrderedHashSet;
            invokevirtual org.hsqldb.rights.Grantee.roleMapToString:(Lorg/hsqldb/lib/OrderedHashSet;)Ljava/lang/String;
            astore 2 /* roleString */
        start local 2 // java.lang.String roleString
         2: .line 1123
            aload 2 /* roleString */
            invokevirtual java.lang.String.length:()I
            ifeq 8
         3: .line 1124
            new java.lang.StringBuilder
            dup
            sipush 128
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
         4: .line 1126
            aload 3 /* sb */
            ldc "GRANT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 2 /* roleString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 1127
            aload 3 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "TO"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         6: .line 1128
            aload 3 /* sb */
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.HsqlNameManager$HsqlName.getStatementName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 1129
            aload 1 /* list */
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.hsqldb.lib.HsqlArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // java.lang.StringBuilder sb
         8: .line 1132
      StackMap locals: org.hsqldb.lib.HsqlArrayList java.lang.String
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.getRights:()Lorg/hsqldb/lib/MultiValueHashMap;
            astore 3 /* rightsMap */
        start local 3 // org.hsqldb.lib.MultiValueHashMap rightsMap
         9: .line 1133
            aload 3 /* rightsMap */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.keySet:()Lorg/hsqldb/lib/Set;
            invokeinterface org.hsqldb.lib.Set.iterator:()Lorg/hsqldb/lib/Iterator;
            astore 4 /* dbObjects */
        start local 4 // org.hsqldb.lib.Iterator dbObjects
        10: .line 1135
            goto 113
        11: .line 1136
      StackMap locals: org.hsqldb.lib.MultiValueHashMap org.hsqldb.lib.Iterator
      StackMap stack:
            aload 4 /* dbObjects */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            astore 5 /* nameObject */
        start local 5 // java.lang.Object nameObject
        12: .line 1137
            aload 3 /* rightsMap */
            aload 5 /* nameObject */
            invokevirtual org.hsqldb.lib.MultiValueHashMap.get:(Ljava/lang/Object;)Lorg/hsqldb/lib/Iterator;
            astore 6 /* rights */
        start local 6 // org.hsqldb.lib.Iterator rights
        13: .line 1139
            goto 112
        14: .line 1140
      StackMap locals: java.lang.Object org.hsqldb.lib.Iterator
      StackMap stack:
            aload 6 /* rights */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast org.hsqldb.rights.Right
            astore 7 /* right */
        start local 7 // org.hsqldb.rights.Right right
        15: .line 1141
            new java.lang.StringBuilder
            dup
            sipush 128
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 8 /* sb */
        start local 8 // java.lang.StringBuilder sb
        16: .line 1142
            aload 5 /* nameObject */
            checkcast org.hsqldb.HsqlNameManager$HsqlName
            astore 9 /* hsqlname */
        start local 9 // org.hsqldb.HsqlNameManager$HsqlName hsqlname
        17: .line 1144
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.type:I
            lookupswitch { // 8
                    3: 18
                    4: 18
                    7: 39
                   12: 72
                   13: 56
                   16: 88
                   17: 88
                   24: 88
              default: 107
          }
        18: .line 1149
      StackMap locals: org.hsqldb.rights.Right java.lang.StringBuilder org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.database:Lorg/hsqldb/Database;
            getfield org.hsqldb.Database.schemaManager:Lorg/hsqldb/SchemaManager;
        19: .line 1150
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        20: .line 1151
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        21: .line 1150
            invokevirtual org.hsqldb.SchemaManager.findUserTable:(Ljava/lang/String;Ljava/lang/String;)Lorg/hsqldb/Table;
        22: .line 1148
            astore 10 /* table */
        start local 10 // org.hsqldb.Table table
        23: .line 1153
            aload 10 /* table */
            ifnull 107
        24: .line 1154
            aload 8 /* sb */
            ldc "GRANT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        25: .line 1155
            aload 8 /* sb */
            aload 7 /* right */
            aload 10 /* table */
            invokevirtual org.hsqldb.rights.Right.getTableRightsSQL:(Lorg/hsqldb/Table;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        26: .line 1156
            aload 8 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "ON"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        27: .line 1157
            aload 8 /* sb */
            ldc "TABLE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        28: .line 1158
            aload 8 /* sb */
        29: .line 1159
            aload 9 /* hsqlname */
            invokevirtual org.hsqldb.HsqlNameManager$HsqlName.getSchemaQualifiedStatementName:()Ljava/lang/String;
        30: .line 1158
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        31: .line 1161
            aload 7 /* right */
            invokevirtual org.hsqldb.rights.Right.getFilterExpression:()Lorg/hsqldb/ExpressionLogical;
            astore 11 /* expr */
        start local 11 // org.hsqldb.Expression expr
        32: .line 1163
            aload 11 /* expr */
            ifnull 107
        33: .line 1164
            aload 8 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "FILTER"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        34: .line 1165
            aload 8 /* sb */
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        35: .line 1166
            aload 8 /* sb */
            ldc "WHERE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        36: .line 1167
            aload 8 /* sb */
            aload 11 /* expr */
            invokevirtual org.hsqldb.Expression.getSQL:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        37: .line 1168
            aload 8 /* sb */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 11 // org.hsqldb.Expression expr
        38: .line 1171
            goto 107
        end local 10 // org.hsqldb.Table table
        39: .line 1175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.database:Lorg/hsqldb/Database;
        40: .line 1176
            getfield org.hsqldb.Database.schemaManager:Lorg/hsqldb/SchemaManager;
        41: .line 1177
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        42: .line 1178
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        43: .line 1179
            bipush 7
        44: .line 1177
            invokevirtual org.hsqldb.SchemaManager.findSchemaObject:(Ljava/lang/String;Ljava/lang/String;I)Lorg/hsqldb/SchemaObject;
        45: .line 1175
            checkcast org.hsqldb.NumberSequence
        46: .line 1174
            astore 11 /* sequence */
        start local 11 // org.hsqldb.NumberSequence sequence
        47: .line 1181
            aload 11 /* sequence */
            ifnull 107
        48: .line 1182
            aload 8 /* sb */
            ldc "GRANT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        49: .line 1183
            aload 8 /* sb */
            ldc "USAGE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        50: .line 1184
            aload 8 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "ON"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        51: .line 1185
            aload 8 /* sb */
            ldc "SEQUENCE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        52: .line 1186
            aload 8 /* sb */
        53: .line 1187
            aload 9 /* hsqlname */
            invokevirtual org.hsqldb.HsqlNameManager$HsqlName.getSchemaQualifiedStatementName:()Ljava/lang/String;
        54: .line 1186
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        55: .line 1189
            goto 107
        end local 11 // org.hsqldb.NumberSequence sequence
        56: .line 1193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.database:Lorg/hsqldb/Database;
            getfield org.hsqldb.Database.schemaManager:Lorg/hsqldb/SchemaManager;
        57: .line 1194
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        58: .line 1195
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        59: .line 1196
            bipush 13
        60: .line 1194
            invokevirtual org.hsqldb.SchemaManager.findSchemaObject:(Ljava/lang/String;Ljava/lang/String;I)Lorg/hsqldb/SchemaObject;
        61: .line 1193
            checkcast org.hsqldb.types.Type
        62: .line 1192
            astore 12 /* domain */
        start local 12 // org.hsqldb.types.Type domain
        63: .line 1198
            aload 12 /* domain */
            ifnull 107
        64: .line 1199
            aload 8 /* sb */
            ldc "GRANT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        65: .line 1200
            aload 8 /* sb */
            ldc "USAGE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        66: .line 1201
            aload 8 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "ON"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        67: .line 1202
            aload 8 /* sb */
            ldc "DOMAIN"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        68: .line 1203
            aload 8 /* sb */
        69: .line 1204
            aload 9 /* hsqlname */
            invokevirtual org.hsqldb.HsqlNameManager$HsqlName.getSchemaQualifiedStatementName:()Ljava/lang/String;
        70: .line 1203
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        71: .line 1206
            goto 107
        end local 12 // org.hsqldb.types.Type domain
        72: .line 1210
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.database:Lorg/hsqldb/Database;
            getfield org.hsqldb.Database.schemaManager:Lorg/hsqldb/SchemaManager;
        73: .line 1211
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        74: .line 1212
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        75: .line 1213
            bipush 13
        76: .line 1211
            invokevirtual org.hsqldb.SchemaManager.findSchemaObject:(Ljava/lang/String;Ljava/lang/String;I)Lorg/hsqldb/SchemaObject;
        77: .line 1210
            checkcast org.hsqldb.types.Type
        78: .line 1209
            astore 13 /* type */
        start local 13 // org.hsqldb.types.Type type
        79: .line 1215
            aload 13 /* type */
            ifnull 107
        80: .line 1216
            aload 8 /* sb */
            ldc "GRANT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        81: .line 1217
            aload 8 /* sb */
            ldc "USAGE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        82: .line 1218
            aload 8 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "ON"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        83: .line 1219
            aload 8 /* sb */
            ldc "TYPE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        84: .line 1220
            aload 8 /* sb */
        85: .line 1221
            aload 9 /* hsqlname */
            invokevirtual org.hsqldb.HsqlNameManager$HsqlName.getSchemaQualifiedStatementName:()Ljava/lang/String;
        86: .line 1220
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        87: .line 1223
            goto 107
        end local 13 // org.hsqldb.types.Type type
        88: .line 1229
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.hsqldb.rights.Grantee.granteeManager:Lorg/hsqldb/rights/GranteeManager;
            getfield org.hsqldb.rights.GranteeManager.database:Lorg/hsqldb/Database;
            getfield org.hsqldb.Database.schemaManager:Lorg/hsqldb/SchemaManager;
        89: .line 1230
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        90: .line 1231
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.schema:Lorg/hsqldb/HsqlNameManager$HsqlName;
            getfield org.hsqldb.HsqlNameManager$HsqlName.name:Ljava/lang/String;
        91: .line 1232
            aload 9 /* hsqlname */
            getfield org.hsqldb.HsqlNameManager$HsqlName.type:I
        92: .line 1230
            invokevirtual org.hsqldb.SchemaManager.findSchemaObject:(Ljava/lang/String;Ljava/lang/String;I)Lorg/hsqldb/SchemaObject;
        93: .line 1228
            astore 14 /* routine */
        start local 14 // org.hsqldb.SchemaObject routine
        94: .line 1234
            aload 14 /* routine */
            ifnull 107
        95: .line 1235
            aload 8 /* sb */
            ldc "GRANT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        96: .line 1236
            aload 8 /* sb */
            ldc "EXECUTE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        97: .line 1237
            aload 8 /* sb */
            ldc "ON"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        98: .line 1238
            aload 8 /* sb */
            ldc "SPECIFIC"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        99: .line 1240
            aload 14 /* routine */
            invokeinterface org.hsqldb.SchemaObject.getType:()I
            bipush 17
            if_icmpne 102
       100: .line 1241
            aload 8 /* sb */
            ldc "PROCEDURE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       101: .line 1242
            goto 103
       102: .line 1243
      StackMap locals: org.hsqldb.rights.Grantee org.hsqldb.lib.HsqlArrayList java.lang.String org.hsqldb.lib.MultiValueHashMap org.hsqldb.lib.Iterator java.lang.Object org.hsqldb.lib.Iterator org.hsqldb.rights.Right java.lang.StringBuilder org.hsqldb.HsqlNameManager$HsqlName top top top top org.hsqldb.SchemaObject
      StackMap stack:
            aload 8 /* sb */
            ldc "FUNCTION"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       103: .line 1246
      StackMap locals:
      StackMap stack:
            aload 8 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
       104: .line 1247
            aload 8 /* sb */
       105: .line 1248
            aload 9 /* hsqlname */
            invokevirtual org.hsqldb.HsqlNameManager$HsqlName.getSchemaQualifiedStatementName:()Ljava/lang/String;
       106: .line 1247
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 14 // org.hsqldb.SchemaObject routine
       107: .line 1255
      StackMap locals: org.hsqldb.rights.Grantee org.hsqldb.lib.HsqlArrayList java.lang.String org.hsqldb.lib.MultiValueHashMap org.hsqldb.lib.Iterator java.lang.Object org.hsqldb.lib.Iterator org.hsqldb.rights.Right java.lang.StringBuilder org.hsqldb.HsqlNameManager$HsqlName
      StackMap stack:
            aload 8 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifne 109
       108: .line 1256
            goto 112
       109: .line 1259
      StackMap locals:
      StackMap stack:
            aload 8 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc "TO"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
       110: .line 1260
            aload 8 /* sb */
            aload 0 /* this */
            invokevirtual org.hsqldb.rights.Grantee.getName:()Lorg/hsqldb/HsqlNameManager$HsqlName;
            invokevirtual org.hsqldb.HsqlNameManager$HsqlName.getStatementName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
       111: .line 1261
            aload 1 /* list */
            aload 8 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.hsqldb.lib.HsqlArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // org.hsqldb.HsqlNameManager$HsqlName hsqlname
        end local 8 // java.lang.StringBuilder sb
        end local 7 // org.hsqldb.rights.Right right
       112: .line 1139
      StackMap locals:
      StackMap stack:
            aload 6 /* rights */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 14
        end local 6 // org.hsqldb.lib.Iterator rights
        end local 5 // java.lang.Object nameObject
       113: .line 1135
      StackMap locals:
      StackMap stack:
            aload 4 /* dbObjects */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 11
       114: .line 1265
            aload 1 /* list */
            areturn
        end local 4 // org.hsqldb.lib.Iterator dbObjects
        end local 3 // org.hsqldb.lib.MultiValueHashMap rightsMap
        end local 2 // java.lang.String roleString
        end local 1 // org.hsqldb.lib.HsqlArrayList list
        end local 0 // org.hsqldb.rights.Grantee this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0  115     0        this  Lorg/hsqldb/rights/Grantee;
            1  115     1        list  Lorg/hsqldb/lib/HsqlArrayList;
            2  115     2  roleString  Ljava/lang/String;
            4    8     3          sb  Ljava/lang/StringBuilder;
            9  115     3   rightsMap  Lorg/hsqldb/lib/MultiValueHashMap;
           10  115     4   dbObjects  Lorg/hsqldb/lib/Iterator;
           12  113     5  nameObject  Ljava/lang/Object;
           13  113     6      rights  Lorg/hsqldb/lib/Iterator;
           15  112     7       right  Lorg/hsqldb/rights/Right;
           16  112     8          sb  Ljava/lang/StringBuilder;
           17  112     9    hsqlname  Lorg/hsqldb/HsqlNameManager$HsqlName;
           23   39    10       table  Lorg/hsqldb/Table;
           32   38    11        expr  Lorg/hsqldb/Expression;
           47   56    11    sequence  Lorg/hsqldb/NumberSequence;
           63   72    12      domain  Lorg/hsqldb/types/Type;
           79   88    13        type  Lorg/hsqldb/types/Type;
           94  107    14     routine  Lorg/hsqldb/SchemaObject;
}
SourceFile: "Grantee.java"
InnerClasses:
  public final HsqlName = org.hsqldb.HsqlNameManager$HsqlName of org.hsqldb.HsqlNameManager