class com.sun.security.auth.PolicyParser$GrantEntry
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.security.auth.PolicyParser$GrantEntry
  super_class: java.lang.Object
{
  public java.lang.String signedBy;
    descriptor: Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC

  public java.lang.String codeBase;
    descriptor: Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC

  public java.util.LinkedList<com.sun.security.auth.PolicyParser$PrincipalEntry> principals;
    descriptor: Ljava/util/LinkedList;
    flags: (0x0001) ACC_PUBLIC
    Signature: Ljava/util/LinkedList<Lcom/sun/security/auth/PolicyParser$PrincipalEntry;>;

  public java.util.Vector<com.sun.security.auth.PolicyParser$PermissionEntry> permissionEntries;
    descriptor: Ljava/util/Vector;
    flags: (0x0001) ACC_PUBLIC
    Signature: Ljava/util/Vector<Lcom/sun/security/auth/PolicyParser$PermissionEntry;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
         0: .line 656
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 657
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.security.auth.PolicyParser$GrantEntry.permissionEntries:Ljava/util/Vector;
         2: .line 658
            return
        end local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/security/auth/PolicyParser$GrantEntry;

  public void <init>(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
        start local 1 // java.lang.String signedBy
        start local 2 // java.lang.String codeBase
         0: .line 660
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 661
            aload 0 /* this */
            aload 2 /* codeBase */
            putfield com.sun.security.auth.PolicyParser$GrantEntry.codeBase:Ljava/lang/String;
         2: .line 662
            aload 0 /* this */
            aload 1 /* signedBy */
            putfield com.sun.security.auth.PolicyParser$GrantEntry.signedBy:Ljava/lang/String;
         3: .line 663
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.security.auth.PolicyParser$GrantEntry.permissionEntries:Ljava/util/Vector;
         4: .line 664
            return
        end local 2 // java.lang.String codeBase
        end local 1 // java.lang.String signedBy
        end local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/sun/security/auth/PolicyParser$GrantEntry;
            0    5     1  signedBy  Ljava/lang/String;
            0    5     2  codeBase  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      signedBy  
      codeBase  

  public void add(com.sun.security.auth.PolicyParser$PermissionEntry);
    descriptor: (Lcom/sun/security/auth/PolicyParser$PermissionEntry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
        start local 1 // com.sun.security.auth.PolicyParser$PermissionEntry pe
         0: .line 668
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.permissionEntries:Ljava/util/Vector;
            aload 1 /* pe */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         1: .line 669
            return
        end local 1 // com.sun.security.auth.PolicyParser$PermissionEntry pe
        end local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/security/auth/PolicyParser$GrantEntry;
            0    2     1    pe  Lcom/sun/security/auth/PolicyParser$PermissionEntry;
    MethodParameters:
      Name  Flags
      pe    

  public boolean remove(com.sun.security.auth.PolicyParser$PermissionEntry);
    descriptor: (Lcom/sun/security/auth/PolicyParser$PermissionEntry;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
        start local 1 // com.sun.security.auth.PolicyParser$PermissionEntry pe
         0: .line 673
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.permissionEntries:Ljava/util/Vector;
            aload 1 /* pe */
            invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // com.sun.security.auth.PolicyParser$PermissionEntry pe
        end local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/security/auth/PolicyParser$GrantEntry;
            0    1     1    pe  Lcom/sun/security/auth/PolicyParser$PermissionEntry;
    MethodParameters:
      Name  Flags
      pe    

  public boolean contains(com.sun.security.auth.PolicyParser$PermissionEntry);
    descriptor: (Lcom/sun/security/auth/PolicyParser$PermissionEntry;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
        start local 1 // com.sun.security.auth.PolicyParser$PermissionEntry pe
         0: .line 678
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.permissionEntries:Ljava/util/Vector;
            aload 1 /* pe */
            invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // com.sun.security.auth.PolicyParser$PermissionEntry pe
        end local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/security/auth/PolicyParser$GrantEntry;
            0    1     1    pe  Lcom/sun/security/auth/PolicyParser$PermissionEntry;
    MethodParameters:
      Name  Flags
      pe    

  public java.util.Enumeration<com.sun.security.auth.PolicyParser$PermissionEntry> permissionElements();
    descriptor: ()Ljava/util/Enumeration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
         0: .line 685
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.permissionEntries:Ljava/util/Vector;
            invokevirtual java.util.Vector.elements:()Ljava/util/Enumeration;
            areturn
        end local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/security/auth/PolicyParser$GrantEntry;
    Signature: ()Ljava/util/Enumeration<Lcom/sun/security/auth/PolicyParser$PermissionEntry;>;

  public void write(java.io.PrintWriter);
    descriptor: (Ljava/io/PrintWriter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
        start local 1 // java.io.PrintWriter out
         0: .line 690
            aload 1 /* out */
            ldc "grant"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         1: .line 691
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.signedBy:Ljava/lang/String;
            ifnull 7
         2: .line 692
            aload 1 /* out */
            ldc " signedBy \""
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         3: .line 693
            aload 1 /* out */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.signedBy:Ljava/lang/String;
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         4: .line 694
            aload 1 /* out */
            bipush 34
            invokevirtual java.io.PrintWriter.print:(C)V
         5: .line 695
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.codeBase:Ljava/lang/String;
            ifnull 7
         6: .line 696
            aload 1 /* out */
            ldc ", "
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         7: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.codeBase:Ljava/lang/String;
            ifnull 13
         8: .line 699
            aload 1 /* out */
            ldc " codeBase \""
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         9: .line 700
            aload 1 /* out */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.codeBase:Ljava/lang/String;
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
        10: .line 701
            aload 1 /* out */
            bipush 34
            invokevirtual java.io.PrintWriter.print:(C)V
        11: .line 702
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.principals:Ljava/util/LinkedList;
            ifnull 13
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.principals:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.size:()I
            ifle 13
        12: .line 703
            aload 1 /* out */
            ldc ",\n"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
        13: .line 705
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.principals:Ljava/util/LinkedList;
            ifnull 24
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.principals:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.size:()I
            ifle 24
        14: .line 706
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.principals:Ljava/util/LinkedList;
            invokevirtual java.util.LinkedList.listIterator:()Ljava/util/ListIterator;
            astore 2 /* pli */
        start local 2 // java.util.ListIterator pli
        15: .line 707
            goto 23
        16: .line 708
      StackMap locals: java.util.ListIterator
      StackMap stack:
            aload 1 /* out */
            ldc "\tPrincipal "
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
        17: .line 709
            aload 2 /* pli */
            invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
            checkcast com.sun.security.auth.PolicyParser$PrincipalEntry
            astore 3 /* pe */
        start local 3 // com.sun.security.auth.PolicyParser$PrincipalEntry pe
        18: .line 710
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            aload 3 /* pe */
            getfield com.sun.security.auth.PolicyParser$PrincipalEntry.principalClass:Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        19: .line 711
            ldc " \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* pe */
            getfield com.sun.security.auth.PolicyParser$PrincipalEntry.principalName:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        20: .line 710
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
        21: .line 712
            aload 2 /* pli */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifeq 23
        22: .line 713
            aload 1 /* out */
            ldc ",\n"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
        end local 3 // com.sun.security.auth.PolicyParser$PrincipalEntry pe
        23: .line 707
      StackMap locals:
      StackMap stack:
            aload 2 /* pli */
            invokeinterface java.util.ListIterator.hasNext:()Z
            ifne 16
        end local 2 // java.util.ListIterator pli
        24: .line 716
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            ldc " {"
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
        25: .line 717
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.permissionEntries:Ljava/util/Vector;
            invokevirtual java.util.Vector.elements:()Ljava/util/Enumeration;
            astore 2 /* enum_ */
        start local 2 // java.util.Enumeration enum_
        26: .line 718
            goto 30
        27: .line 719
      StackMap locals: java.util.Enumeration
      StackMap stack:
            aload 2 /* enum_ */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast com.sun.security.auth.PolicyParser$PermissionEntry
            astore 3 /* pe */
        start local 3 // com.sun.security.auth.PolicyParser$PermissionEntry pe
        28: .line 720
            aload 1 /* out */
            ldc "  "
            invokevirtual java.io.PrintWriter.write:(Ljava/lang/String;)V
        29: .line 721
            aload 3 /* pe */
            aload 1 /* out */
            invokevirtual com.sun.security.auth.PolicyParser$PermissionEntry.write:(Ljava/io/PrintWriter;)V
        end local 3 // com.sun.security.auth.PolicyParser$PermissionEntry pe
        30: .line 718
      StackMap locals:
      StackMap stack:
            aload 2 /* enum_ */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 27
        31: .line 723
            aload 1 /* out */
            ldc "};"
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
        32: .line 724
            return
        end local 2 // java.util.Enumeration enum_
        end local 1 // java.io.PrintWriter out
        end local 0 // com.sun.security.auth.PolicyParser$GrantEntry this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   33     0   this  Lcom/sun/security/auth/PolicyParser$GrantEntry;
            0   33     1    out  Ljava/io/PrintWriter;
           15   24     2    pli  Ljava/util/ListIterator<Lcom/sun/security/auth/PolicyParser$PrincipalEntry;>;
           18   23     3     pe  Lcom/sun/security/auth/PolicyParser$PrincipalEntry;
           26   33     2  enum_  Ljava/util/Enumeration<Lcom/sun/security/auth/PolicyParser$PermissionEntry;>;
           28   30     3     pe  Lcom/sun/security/auth/PolicyParser$PermissionEntry;
    MethodParameters:
      Name  Flags
      out   
}
SourceFile: "PolicyParser.java"
NestHost: com.sun.security.auth.PolicyParser
InnerClasses:
  GrantEntry = com.sun.security.auth.PolicyParser$GrantEntry of com.sun.security.auth.PolicyParser
  PermissionEntry = com.sun.security.auth.PolicyParser$PermissionEntry of com.sun.security.auth.PolicyParser
  PrincipalEntry = com.sun.security.auth.PolicyParser$PrincipalEntry of com.sun.security.auth.PolicyParser