class com.sun.security.auth.PolicyParser
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.security.auth.PolicyParser
  super_class: java.lang.Object
{
  private static final java.util.ResourceBundle rb;
    descriptor: Ljava/util/ResourceBundle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.util.Vector<com.sun.security.auth.PolicyParser$GrantEntry> grantEntries;
    descriptor: Ljava/util/Vector;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Vector<Lcom/sun/security/auth/PolicyParser$GrantEntry;>;

  private static final sun.security.util.Debug debug;
    descriptor: Lsun/security/util/Debug;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.io.StreamTokenizer st;
    descriptor: Ljava/io/StreamTokenizer;
    flags: (0x0002) ACC_PRIVATE

  private int lookahead;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int linenum;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

  private java.lang.String keyStoreUrlString;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String keyStoreType;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 90
            new com.sun.security.auth.PolicyParser$1
            dup
            invokespecial com.sun.security.auth.PolicyParser$1.<init>:()V
         1: .line 89
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.util.ResourceBundle
         2: .line 88
            putstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
         3: .line 101
            ldc "parser"
            ldc "\t[Auth Policy Parser]"
            invokestatic sun.security.util.Debug.getInstance:(Ljava/lang/String;Ljava/lang/String;)Lsun/security/util/Debug;
         4: .line 100
            putstatic com.sun.security.auth.PolicyParser.debug:Lsun/security/util/Debug;
         5: .line 101
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private java.lang.String expand(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // java.lang.String value
         0: .line 112
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.expandProp:Z
            ifeq 2
         1: .line 113
            aload 1 /* value */
            invokestatic sun.security.util.PropertyExpander.expand:(Ljava/lang/String;)Ljava/lang/String;
            areturn
         2: .line 115
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            areturn
        end local 1 // java.lang.String value
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/sun/security/auth/PolicyParser;
            0    3     1  value  Ljava/lang/String;
    Exceptions:
      throws sun.security.util.PropertyExpander$ExpandException
    MethodParameters:
       Name  Flags
      value  

  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 this
         0: .line 121
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 105
            aload 0 /* this */
            iconst_0
            putfield com.sun.security.auth.PolicyParser.expandProp:Z
         2: .line 106
            aload 0 /* this */
            aconst_null
            putfield com.sun.security.auth.PolicyParser.keyStoreUrlString:Ljava/lang/String;
         3: .line 107
            aload 0 /* this */
            aconst_null
            putfield com.sun.security.auth.PolicyParser.keyStoreType:Ljava/lang/String;
         4: .line 122
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.security.auth.PolicyParser.grantEntries:Ljava/util/Vector;
         5: .line 123
            return
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/security/auth/PolicyParser;

  public void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // boolean expandProp
         0: .line 127
            aload 0 /* this */
            invokespecial com.sun.security.auth.PolicyParser.<init>:()V
         1: .line 128
            aload 0 /* this */
            iload 1 /* expandProp */
            putfield com.sun.security.auth.PolicyParser.expandProp:Z
         2: .line 129
            return
        end local 1 // boolean expandProp
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/security/auth/PolicyParser;
            0    3     1  expandProp  Z
    MethodParameters:
            Name  Flags
      expandProp  

  public void read(java.io.Reader);
    descriptor: (Ljava/io/Reader;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // java.io.Reader policy
         0: .line 147
            aload 1 /* policy */
            instanceof java.io.BufferedReader
            ifne 2
         1: .line 148
            new java.io.BufferedReader
            dup
            aload 1 /* policy */
            invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
            astore 1 /* policy */
         2: .line 158
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.io.StreamTokenizer
            dup
            aload 1 /* policy */
            invokespecial java.io.StreamTokenizer.<init>:(Ljava/io/Reader;)V
            putfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
         3: .line 160
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.resetSyntax:()V
         4: .line 161
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 97
            bipush 122
            invokevirtual java.io.StreamTokenizer.wordChars:(II)V
         5: .line 162
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 65
            bipush 90
            invokevirtual java.io.StreamTokenizer.wordChars:(II)V
         6: .line 163
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 46
            bipush 46
            invokevirtual java.io.StreamTokenizer.wordChars:(II)V
         7: .line 164
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 48
            bipush 57
            invokevirtual java.io.StreamTokenizer.wordChars:(II)V
         8: .line 165
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 95
            bipush 95
            invokevirtual java.io.StreamTokenizer.wordChars:(II)V
         9: .line 166
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 36
            bipush 36
            invokevirtual java.io.StreamTokenizer.wordChars:(II)V
        10: .line 167
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            sipush 160
            sipush 255
            invokevirtual java.io.StreamTokenizer.wordChars:(II)V
        11: .line 168
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            iconst_0
            bipush 32
            invokevirtual java.io.StreamTokenizer.whitespaceChars:(II)V
        12: .line 169
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 47
            invokevirtual java.io.StreamTokenizer.commentChar:(I)V
        13: .line 170
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 39
            invokevirtual java.io.StreamTokenizer.quoteChar:(I)V
        14: .line 171
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 34
            invokevirtual java.io.StreamTokenizer.quoteChar:(I)V
        15: .line 172
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            iconst_0
            invokevirtual java.io.StreamTokenizer.lowerCaseMode:(Z)V
        16: .line 173
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            bipush 47
            invokevirtual java.io.StreamTokenizer.ordinaryChar:(I)V
        17: .line 174
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            iconst_1
            invokevirtual java.io.StreamTokenizer.slashSlashComments:(Z)V
        18: .line 175
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            iconst_1
            invokevirtual java.io.StreamTokenizer.slashStarComments:(Z)V
        19: .line 186
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
        20: .line 187
            goto 29
        21: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "grant"
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 26
        22: .line 189
            aload 0 /* this */
            invokevirtual com.sun.security.auth.PolicyParser.parseGrantEntry:()Lcom/sun/security/auth/PolicyParser$GrantEntry;
            astore 2 /* ge */
        start local 2 // com.sun.security.auth.PolicyParser$GrantEntry ge
        23: .line 191
            aload 2 /* ge */
            ifnull 28
        24: .line 192
            aload 0 /* this */
            aload 2 /* ge */
            invokevirtual com.sun.security.auth.PolicyParser.add:(Lcom/sun/security/auth/PolicyParser$GrantEntry;)V
        end local 2 // com.sun.security.auth.PolicyParser$GrantEntry ge
        25: .line 193
            goto 28
      StackMap locals:
      StackMap stack:
        26: aload 0 /* this */
            ldc "keystore"
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 28
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreUrlString:Ljava/lang/String;
            ifnonnull 28
        27: .line 196
            aload 0 /* this */
            invokevirtual com.sun.security.auth.PolicyParser.parseKeyStoreEntry:()V
        28: .line 200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc ";"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
        29: .line 187
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.lookahead:I
            iconst_m1
            if_icmpne 21
        30: .line 202
            return
        end local 1 // java.io.Reader policy
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   31     0    this  Lcom/sun/security/auth/PolicyParser;
            0   31     1  policy  Ljava/io/Reader;
           23   25     2      ge  Lcom/sun/security/auth/PolicyParser$GrantEntry;
    Exceptions:
      throws com.sun.security.auth.PolicyParser$ParsingException, java.io.IOException
    MethodParameters:
        Name  Flags
      policy  

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

  public void replace(com.sun.security.auth.PolicyParser$GrantEntry, com.sun.security.auth.PolicyParser$GrantEntry);
    descriptor: (Lcom/sun/security/auth/PolicyParser$GrantEntry;Lcom/sun/security/auth/PolicyParser$GrantEntry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // com.sun.security.auth.PolicyParser$GrantEntry origGe
        start local 2 // com.sun.security.auth.PolicyParser$GrantEntry newGe
         0: .line 211
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.grantEntries:Ljava/util/Vector;
            aload 2 /* newGe */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.grantEntries:Ljava/util/Vector;
            aload 1 /* origGe */
            invokevirtual java.util.Vector.indexOf:(Ljava/lang/Object;)I
            invokevirtual java.util.Vector.setElementAt:(Ljava/lang/Object;I)V
         1: .line 212
            return
        end local 2 // com.sun.security.auth.PolicyParser$GrantEntry newGe
        end local 1 // com.sun.security.auth.PolicyParser$GrantEntry origGe
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/sun/security/auth/PolicyParser;
            0    2     1  origGe  Lcom/sun/security/auth/PolicyParser$GrantEntry;
            0    2     2   newGe  Lcom/sun/security/auth/PolicyParser$GrantEntry;
    MethodParameters:
        Name  Flags
      origGe  
      newGe   

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

  public java.lang.String getKeyStoreUrl();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.security.auth.PolicyParser this
         0: .line 225
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreUrlString:Ljava/lang/String;
            ifnull 7
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreUrlString:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifeq 7
         1: .line 226
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreUrlString:Ljava/lang/String;
            invokevirtual com.sun.security.auth.PolicyParser.expand:(Ljava/lang/String;)Ljava/lang/String;
            getstatic java.io.File.separatorChar:C
         2: .line 227
            bipush 47
         3: .line 226
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
         4: areturn
         5: .line 229
      StackMap locals:
      StackMap stack: sun.security.util.PropertyExpander$ExpandException
            pop
         6: .line 230
            aconst_null
            areturn
         7: .line 232
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/sun/security/auth/PolicyParser;
      Exception table:
        from    to  target  type
           0     4       5  Class sun.security.util.PropertyExpander$ExpandException

  public void setKeyStoreUrl(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // java.lang.String url
         0: .line 236
            aload 0 /* this */
            aload 1 /* url */
            putfield com.sun.security.auth.PolicyParser.keyStoreUrlString:Ljava/lang/String;
         1: .line 237
            return
        end local 1 // java.lang.String url
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/security/auth/PolicyParser;
            0    2     1   url  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      url   

  public java.lang.String getKeyStoreType();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.security.auth.PolicyParser this
         0: .line 240
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreType:Ljava/lang/String;
            areturn
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/security/auth/PolicyParser;

  public void setKeyStoreType(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // java.lang.String type
         0: .line 244
            aload 0 /* this */
            aload 1 /* type */
            putfield com.sun.security.auth.PolicyParser.keyStoreType:Ljava/lang/String;
         1: .line 245
            return
        end local 1 // java.lang.String type
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/security/auth/PolicyParser;
            0    2     1  type  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      type  

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

  public void write(java.io.Writer);
    descriptor: (Ljava/io/Writer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // java.io.Writer policy
         0: .line 263
            new java.io.PrintWriter
            dup
            new java.io.BufferedWriter
            dup
            aload 1 /* policy */
            invokespecial java.io.BufferedWriter.<init>:(Ljava/io/Writer;)V
            invokespecial java.io.PrintWriter.<init>:(Ljava/io/Writer;)V
            astore 2 /* out */
        start local 2 // java.io.PrintWriter out
         1: .line 265
            aload 0 /* this */
            invokevirtual com.sun.security.auth.PolicyParser.grantElements:()Ljava/util/Enumeration;
            astore 3 /* enum_ */
        start local 3 // java.util.Enumeration enum_
         2: .line 267
            aload 2 /* out */
            new java.lang.StringBuilder
            dup
            ldc "/* AUTOMATICALLY GENERATED ON "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         3: .line 268
            new java.util.Date
            dup
            invokespecial java.util.Date.<init>:()V
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "*/"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 267
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         5: .line 269
            aload 2 /* out */
            ldc "/* DO NOT EDIT */"
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         6: .line 270
            aload 2 /* out */
            invokevirtual java.io.PrintWriter.println:()V
         7: .line 274
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreUrlString:Ljava/lang/String;
            ifnull 13
         8: .line 275
            aload 0 /* this */
            aload 2 /* out */
            invokevirtual com.sun.security.auth.PolicyParser.writeKeyStoreEntry:(Ljava/io/PrintWriter;)V
         9: .line 279
            goto 13
        10: .line 280
      StackMap locals: java.io.PrintWriter java.util.Enumeration
      StackMap stack:
            aload 3 /* enum_ */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            checkcast com.sun.security.auth.PolicyParser$GrantEntry
            astore 4 /* ge */
        start local 4 // com.sun.security.auth.PolicyParser$GrantEntry ge
        11: .line 281
            aload 4 /* ge */
            aload 2 /* out */
            invokevirtual com.sun.security.auth.PolicyParser$GrantEntry.write:(Ljava/io/PrintWriter;)V
        12: .line 282
            aload 2 /* out */
            invokevirtual java.io.PrintWriter.println:()V
        end local 4 // com.sun.security.auth.PolicyParser$GrantEntry ge
        13: .line 279
      StackMap locals:
      StackMap stack:
            aload 3 /* enum_ */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 10
        14: .line 284
            aload 2 /* out */
            invokevirtual java.io.PrintWriter.flush:()V
        15: .line 285
            return
        end local 3 // java.util.Enumeration enum_
        end local 2 // java.io.PrintWriter out
        end local 1 // java.io.Writer policy
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Lcom/sun/security/auth/PolicyParser;
            0   16     1  policy  Ljava/io/Writer;
            1   16     2     out  Ljava/io/PrintWriter;
            2   16     3   enum_  Ljava/util/Enumeration<Lcom/sun/security/auth/PolicyParser$GrantEntry;>;
           11   13     4      ge  Lcom/sun/security/auth/PolicyParser$GrantEntry;
    MethodParameters:
        Name  Flags
      policy  

  private void parseKeyStoreEntry();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.sun.security.auth.PolicyParser this
         0: .line 291
            aload 0 /* this */
            ldc "keystore"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
         1: .line 292
            aload 0 /* this */
            aload 0 /* this */
            ldc "quoted string"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser.keyStoreUrlString:Ljava/lang/String;
         2: .line 295
            aload 0 /* this */
            ldc ","
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifne 4
         3: .line 296
            return
         4: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc ","
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
         5: .line 300
            aload 0 /* this */
            ldc "\""
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 8
         6: .line 301
            aload 0 /* this */
            aload 0 /* this */
            ldc "quoted string"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser.keyStoreType:Ljava/lang/String;
         7: .line 302
            goto 11
         8: .line 303
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
         9: .line 304
            getstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
            ldc "expected.keystore.type"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
        10: .line 303
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;)V
            athrow
        11: .line 306
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lcom/sun/security/auth/PolicyParser;
    Exceptions:
      throws com.sun.security.auth.PolicyParser$ParsingException, java.io.IOException

  private void writeKeyStoreEntry(java.io.PrintWriter);
    descriptor: (Ljava/io/PrintWriter;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // java.io.PrintWriter out
         0: .line 312
            aload 1 /* out */
            ldc "keystore \""
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         1: .line 313
            aload 1 /* out */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreUrlString:Ljava/lang/String;
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         2: .line 314
            aload 1 /* out */
            bipush 34
            invokevirtual java.io.PrintWriter.print:(C)V
         3: .line 315
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreType:Ljava/lang/String;
            ifnull 5
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreType:Ljava/lang/String;
            invokevirtual java.lang.String.length:()I
            ifle 5
         4: .line 316
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc ", \""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.keyStoreType: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;
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         5: .line 317
      StackMap locals:
      StackMap stack:
            aload 1 /* out */
            ldc ";"
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         6: .line 318
            aload 1 /* out */
            invokevirtual java.io.PrintWriter.println:()V
         7: .line 319
            return
        end local 1 // java.io.PrintWriter out
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/sun/security/auth/PolicyParser;
            0    8     1   out  Ljava/io/PrintWriter;
    MethodParameters:
      Name  Flags
      out   

  private com.sun.security.auth.PolicyParser$GrantEntry parseGrantEntry();
    descriptor: ()Lcom/sun/security/auth/PolicyParser$GrantEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // com.sun.security.auth.PolicyParser this
         0: .line 327
            new com.sun.security.auth.PolicyParser$GrantEntry
            dup
            invokespecial com.sun.security.auth.PolicyParser$GrantEntry.<init>:()V
            astore 1 /* e */
        start local 1 // com.sun.security.auth.PolicyParser$GrantEntry e
         1: .line 328
            aconst_null
            astore 2 /* principals */
        start local 2 // java.util.LinkedList principals
         2: .line 329
            iconst_0
            istore 3 /* ignoreEntry */
        start local 3 // boolean ignoreEntry
         3: .line 331
            aload 0 /* this */
            ldc "grant"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
         4: .line 333
            goto 50
         5: .line 335
      StackMap locals: com.sun.security.auth.PolicyParser$GrantEntry java.util.LinkedList int
      StackMap stack:
            aload 0 /* this */
            ldc "Codebase"
            invokevirtual com.sun.security.auth.PolicyParser.peekAndMatch:(Ljava/lang/String;)Z
            ifeq 9
         6: .line 336
            aload 1 /* e */
            aload 0 /* this */
            ldc "quoted string"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser$GrantEntry.codeBase:Ljava/lang/String;
         7: .line 337
            aload 0 /* this */
            ldc ","
            invokevirtual com.sun.security.auth.PolicyParser.peekAndMatch:(Ljava/lang/String;)Z
            pop
         8: .line 338
            goto 50
      StackMap locals:
      StackMap stack:
         9: aload 0 /* this */
            ldc "SignedBy"
            invokevirtual com.sun.security.auth.PolicyParser.peekAndMatch:(Ljava/lang/String;)Z
            ifeq 13
        10: .line 339
            aload 1 /* e */
            aload 0 /* this */
            ldc "quoted string"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser$GrantEntry.signedBy:Ljava/lang/String;
        11: .line 340
            aload 0 /* this */
            ldc ","
            invokevirtual com.sun.security.auth.PolicyParser.peekAndMatch:(Ljava/lang/String;)Z
            pop
        12: .line 341
            goto 50
      StackMap locals:
      StackMap stack:
        13: aload 0 /* this */
            ldc "Principal"
            invokevirtual com.sun.security.auth.PolicyParser.peekAndMatch:(Ljava/lang/String;)Z
            ifeq 47
        14: .line 342
            aload 2 /* principals */
            ifnonnull 16
        15: .line 343
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            astore 2 /* principals */
        16: .line 348
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "*"
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 20
        17: .line 349
            aload 0 /* this */
            ldc "*"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
        18: .line 350
            ldc "WILDCARD_PRINCIPAL_CLASS"
            astore 4 /* principalClass */
        start local 4 // java.lang.String principalClass
        19: .line 351
            goto 21
        end local 4 // java.lang.String principalClass
        20: .line 352
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "principal type"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* principalClass */
        start local 4 // java.lang.String principalClass
        21: .line 357
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            ldc "*"
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 25
        22: .line 358
            aload 0 /* this */
            ldc "*"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
        23: .line 359
            ldc "WILDCARD_PRINCIPAL_NAME"
            astore 5 /* principalName */
        start local 5 // java.lang.String principalName
        24: .line 360
            goto 26
        end local 5 // java.lang.String principalName
        25: .line 361
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "quoted string"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* principalName */
        start local 5 // java.lang.String principalName
        26: .line 365
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* principalClass */
            ldc "WILDCARD_PRINCIPAL_CLASS"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 34
        27: .line 366
            aload 5 /* principalName */
            ldc "WILDCARD_PRINCIPAL_NAME"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 34
        28: .line 367
            getstatic com.sun.security.auth.PolicyParser.debug:Lsun/security/util/Debug;
            ifnull 30
        29: .line 368
            getstatic com.sun.security.auth.PolicyParser.debug:Lsun/security/util/Debug;
            ldc "disallowing principal that has WILDCARD class but no WILDCARD name"
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        30: .line 370
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
        31: .line 371
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
        32: .line 372
            getstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
            ldc "can.not.specify.Principal.with.a.wildcard.class.without.a.wildcard.name"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
        33: .line 370
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;)V
            athrow
        34: .line 377
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* principalName */
            invokevirtual com.sun.security.auth.PolicyParser.expand:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* principalName */
        35: .line 378
            aload 2 /* principals */
        36: .line 379
            new com.sun.security.auth.PolicyParser$PrincipalEntry
            dup
            aload 4 /* principalClass */
            aload 5 /* principalName */
            invokespecial com.sun.security.auth.PolicyParser$PrincipalEntry.<init>:(Ljava/lang/String;Ljava/lang/String;)V
        37: .line 378
            invokevirtual java.util.LinkedList.add:(Ljava/lang/Object;)Z
            pop
        38: .line 380
            goto 45
      StackMap locals:
      StackMap stack: sun.security.util.PropertyExpander$ExpandException
        39: pop
        40: .line 384
            getstatic com.sun.security.auth.PolicyParser.debug:Lsun/security/util/Debug;
            ifnull 44
        41: .line 385
            getstatic com.sun.security.auth.PolicyParser.debug:Lsun/security/util/Debug;
            new java.lang.StringBuilder
            dup
            ldc "principal name expansion failed: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        42: .line 386
            aload 5 /* principalName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        43: .line 385
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        44: .line 387
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* ignoreEntry */
        45: .line 389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc ","
            invokevirtual com.sun.security.auth.PolicyParser.peekAndMatch:(Ljava/lang/String;)Z
            pop
        end local 5 // java.lang.String principalName
        end local 4 // java.lang.String principalClass
        46: .line 390
            goto 50
        47: .line 392
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
        48: .line 393
            getstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
            ldc "expected.codeBase.or.SignedBy"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
        49: .line 391
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;)V
            athrow
        50: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "{"
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 5
        51: .line 398
            aload 2 /* principals */
            ifnonnull 56
        52: .line 399
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
        53: .line 400
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
        54: .line 401
            getstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
            ldc "only.Principal.based.grant.entries.permitted"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
        55: .line 399
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;)V
            athrow
        56: .line 404
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            aload 2 /* principals */
            putfield com.sun.security.auth.PolicyParser$GrantEntry.principals:Ljava/util/LinkedList;
        57: .line 405
            aload 0 /* this */
            ldc "{"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
        58: .line 407
            goto 70
        59: .line 408
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Permission"
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 67
        60: .line 410
            aload 0 /* this */
            invokevirtual com.sun.security.auth.PolicyParser.parsePermissionEntry:()Lcom/sun/security/auth/PolicyParser$PermissionEntry;
            astore 4 /* pe */
        start local 4 // com.sun.security.auth.PolicyParser$PermissionEntry pe
        61: .line 411
            aload 1 /* e */
            aload 4 /* pe */
            invokevirtual com.sun.security.auth.PolicyParser$GrantEntry.add:(Lcom/sun/security/auth/PolicyParser$PermissionEntry;)V
        end local 4 // com.sun.security.auth.PolicyParser$PermissionEntry pe
        62: .line 412
            goto 65
      StackMap locals:
      StackMap stack: sun.security.util.PropertyExpander$ExpandException
        63: pop
        64: .line 414
            aload 0 /* this */
            invokevirtual com.sun.security.auth.PolicyParser.skipEntry:()V
        65: .line 416
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc ";"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
        66: .line 417
            goto 70
        67: .line 419
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
        68: .line 420
            getstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
            ldc "expected.permission.entry"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
        69: .line 418
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;)V
            athrow
        70: .line 407
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "}"
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 59
        71: .line 423
            aload 0 /* this */
            ldc "}"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
        72: .line 426
            aload 1 /* e */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.codeBase:Ljava/lang/String;
            ifnull 74
        73: .line 427
            aload 1 /* e */
            aload 0 /* this */
            aload 1 /* e */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.codeBase:Ljava/lang/String;
            invokevirtual com.sun.security.auth.PolicyParser.expand:(Ljava/lang/String;)Ljava/lang/String;
            getstatic java.io.File.separatorChar:C
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser$GrantEntry.codeBase:Ljava/lang/String;
        74: .line 428
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            aload 0 /* this */
            aload 1 /* e */
            getfield com.sun.security.auth.PolicyParser$GrantEntry.signedBy:Ljava/lang/String;
            invokevirtual com.sun.security.auth.PolicyParser.expand:(Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser$GrantEntry.signedBy:Ljava/lang/String;
        75: .line 429
            goto 78
      StackMap locals:
      StackMap stack: sun.security.util.PropertyExpander$ExpandException
        76: pop
        77: .line 430
            aconst_null
            areturn
        78: .line 433
      StackMap locals:
      StackMap stack:
            iload 3 /* ignoreEntry */
            ifeq 79
            aconst_null
            goto 80
      StackMap locals:
      StackMap stack:
        79: aload 1 /* e */
      StackMap locals:
      StackMap stack: com.sun.security.auth.PolicyParser$GrantEntry
        80: areturn
        end local 3 // boolean ignoreEntry
        end local 2 // java.util.LinkedList principals
        end local 1 // com.sun.security.auth.PolicyParser$GrantEntry e
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   81     0            this  Lcom/sun/security/auth/PolicyParser;
            1   81     1               e  Lcom/sun/security/auth/PolicyParser$GrantEntry;
            2   81     2      principals  Ljava/util/LinkedList<Lcom/sun/security/auth/PolicyParser$PrincipalEntry;>;
            3   81     3     ignoreEntry  Z
           19   20     4  principalClass  Ljava/lang/String;
           21   46     4  principalClass  Ljava/lang/String;
           24   25     5   principalName  Ljava/lang/String;
           26   46     5   principalName  Ljava/lang/String;
           61   62     4              pe  Lcom/sun/security/auth/PolicyParser$PermissionEntry;
      Exception table:
        from    to  target  type
          34    38      39  Class sun.security.util.PropertyExpander$ExpandException
          60    62      63  Class sun.security.util.PropertyExpander$ExpandException
          72    75      76  Class sun.security.util.PropertyExpander$ExpandException
    Exceptions:
      throws com.sun.security.auth.PolicyParser$ParsingException, java.io.IOException

  private com.sun.security.auth.PolicyParser$PermissionEntry parsePermissionEntry();
    descriptor: ()Lcom/sun/security/auth/PolicyParser$PermissionEntry;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.sun.security.auth.PolicyParser this
         0: .line 442
            new com.sun.security.auth.PolicyParser$PermissionEntry
            dup
            invokespecial com.sun.security.auth.PolicyParser$PermissionEntry.<init>:()V
            astore 1 /* e */
        start local 1 // com.sun.security.auth.PolicyParser$PermissionEntry e
         1: .line 445
            aload 0 /* this */
            ldc "Permission"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
         2: .line 446
            aload 1 /* e */
            aload 0 /* this */
            ldc "permission type"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser$PermissionEntry.permission:Ljava/lang/String;
         3: .line 448
            aload 0 /* this */
            ldc "\""
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 450
            aload 1 /* e */
            aload 0 /* this */
            aload 0 /* this */
            ldc "quoted string"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual com.sun.security.auth.PolicyParser.expand:(Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser$PermissionEntry.name:Ljava/lang/String;
         5: .line 453
      StackMap locals: com.sun.security.auth.PolicyParser$PermissionEntry
      StackMap stack:
            aload 0 /* this */
            ldc ","
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifne 7
         6: .line 454
            aload 1 /* e */
            areturn
         7: .line 456
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc ","
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
         8: .line 458
            aload 0 /* this */
            ldc "\""
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 13
         9: .line 459
            aload 1 /* e */
            aload 0 /* this */
            aload 0 /* this */
            ldc "quoted string"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual com.sun.security.auth.PolicyParser.expand:(Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser$PermissionEntry.action:Ljava/lang/String;
        10: .line 460
            aload 0 /* this */
            ldc ","
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifne 12
        11: .line 461
            aload 1 /* e */
            areturn
        12: .line 463
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc ","
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
        13: .line 466
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "SignedBy"
            invokevirtual com.sun.security.auth.PolicyParser.peekAndMatch:(Ljava/lang/String;)Z
            ifeq 15
        14: .line 467
            aload 1 /* e */
            aload 0 /* this */
            aload 0 /* this */
            ldc "quoted string"
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual com.sun.security.auth.PolicyParser.expand:(Ljava/lang/String;)Ljava/lang/String;
            putfield com.sun.security.auth.PolicyParser$PermissionEntry.signedBy:Ljava/lang/String;
        15: .line 469
      StackMap locals:
      StackMap stack:
            aload 1 /* e */
            areturn
        end local 1 // com.sun.security.auth.PolicyParser$PermissionEntry e
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lcom/sun/security/auth/PolicyParser;
            1   16     1     e  Lcom/sun/security/auth/PolicyParser$PermissionEntry;
    Exceptions:
      throws com.sun.security.auth.PolicyParser$ParsingException, java.io.IOException, sun.security.util.PropertyExpander$ExpandException

  private boolean peekAndMatch(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // java.lang.String expect
         0: .line 475
            aload 0 /* this */
            aload 1 /* expect */
            invokevirtual com.sun.security.auth.PolicyParser.peek:(Ljava/lang/String;)Z
            ifeq 3
         1: .line 476
            aload 0 /* this */
            aload 1 /* expect */
            invokevirtual com.sun.security.auth.PolicyParser.match:(Ljava/lang/String;)Ljava/lang/String;
            pop
         2: .line 477
            iconst_1
            ireturn
         3: .line 479
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.String expect
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lcom/sun/security/auth/PolicyParser;
            0    4     1  expect  Ljava/lang/String;
    Exceptions:
      throws com.sun.security.auth.PolicyParser$ParsingException, java.io.IOException
    MethodParameters:
        Name  Flags
      expect  

  private boolean peek(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // java.lang.String expect
         0: .line 484
            iconst_0
            istore 2 /* found */
        start local 2 // boolean found
         1: .line 486
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.lookahead:I
            lookupswitch { // 6
                   -3: 2
                   34: 14
                   42: 17
                   44: 5
                  123: 8
                  125: 11
              default: 19
          }
         2: .line 489
      StackMap locals: int
      StackMap stack:
            aload 1 /* expect */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 19
         3: .line 490
            iconst_1
            istore 2 /* found */
         4: .line 491
            goto 19
         5: .line 493
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc ","
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 19
         6: .line 494
            iconst_1
            istore 2 /* found */
         7: .line 495
            goto 19
         8: .line 497
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc "{"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 19
         9: .line 498
            iconst_1
            istore 2 /* found */
        10: .line 499
            goto 19
        11: .line 501
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc "}"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 19
        12: .line 502
            iconst_1
            istore 2 /* found */
        13: .line 503
            goto 19
        14: .line 505
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc "\""
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 19
        15: .line 506
            iconst_1
            istore 2 /* found */
        16: .line 507
            goto 19
        17: .line 509
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc "*"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 19
        18: .line 510
            iconst_1
            istore 2 /* found */
        19: .line 515
      StackMap locals:
      StackMap stack:
            iload 2 /* found */
            ireturn
        end local 2 // boolean found
        end local 1 // java.lang.String expect
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   20     0    this  Lcom/sun/security/auth/PolicyParser;
            0   20     1  expect  Ljava/lang/String;
            1   20     2   found  Z
    MethodParameters:
        Name  Flags
      expect  

  private java.lang.String match(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=5, args_size=2
        start local 0 // com.sun.security.auth.PolicyParser this
        start local 1 // java.lang.String expect
         0: .line 521
            aconst_null
            astore 2 /* value */
        start local 2 // java.lang.String value
         1: .line 523
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.lookahead:I
            lookupswitch { // 9
                   -3: 12
                   -2: 2
                   -1: 7
                   34: 24
                   42: 49
                   44: 37
                   59: 46
                  123: 40
                  125: 43
              default: 52
          }
         2: .line 525
      StackMap locals: java.lang.String
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            aload 1 /* expect */
         3: .line 526
            new java.lang.StringBuilder
            dup
            getstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
            ldc "number."
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 527
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.nval:D
            invokestatic java.lang.String.valueOf:(D)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 526
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 525
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
         7: .line 529
      StackMap locals:
      StackMap stack:
            new java.text.MessageFormat
            dup
         8: .line 530
            getstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
            ldc "expected.expect.read.end.of.file."
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
         9: .line 529
            invokespecial java.text.MessageFormat.<init>:(Ljava/lang/String;)V
            astore 3 /* form */
        start local 3 // java.text.MessageFormat form
        10: .line 531
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* expect */
            aastore
            astore 4 /* source */
        start local 4 // java.lang.Object[] source
        11: .line 532
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 3 /* form */
            aload 4 /* source */
            invokevirtual java.text.MessageFormat.format:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.Object[] source
        end local 3 // java.text.MessageFormat form
        12: .line 534
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 15
        13: .line 535
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
        14: .line 536
            goto 55
      StackMap locals:
      StackMap stack:
        15: aload 1 /* expect */
            ldc "permission type"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 19
        16: .line 537
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            astore 2 /* value */
        17: .line 538
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
        18: .line 539
            goto 55
      StackMap locals:
      StackMap stack:
        19: aload 1 /* expect */
            ldc "principal type"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 23
        20: .line 540
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            astore 2 /* value */
        21: .line 541
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
        22: .line 542
            goto 55
        23: .line 543
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            aload 1 /* expect */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
        24: .line 547
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc "quoted string"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 28
        25: .line 548
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            astore 2 /* value */
        26: .line 549
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
        27: .line 550
            goto 55
      StackMap locals:
      StackMap stack:
        28: aload 1 /* expect */
            ldc "permission type"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 32
        29: .line 551
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            astore 2 /* value */
        30: .line 552
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
        31: .line 553
            goto 55
      StackMap locals:
      StackMap stack:
        32: aload 1 /* expect */
            ldc "principal type"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 36
        33: .line 554
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            astore 2 /* value */
        34: .line 555
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
        35: .line 556
            goto 55
        36: .line 557
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            aload 1 /* expect */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.sval:Ljava/lang/String;
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
        37: .line 561
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc ","
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 39
        38: .line 562
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
            goto 55
        39: .line 564
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            aload 1 /* expect */
            ldc ","
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
        40: .line 567
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc "{"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 42
        41: .line 568
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
            goto 55
        42: .line 570
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            aload 1 /* expect */
            ldc "{"
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
        43: .line 573
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc "}"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 45
        44: .line 574
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
            goto 55
        45: .line 576
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            aload 1 /* expect */
            ldc "}"
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
        46: .line 579
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc ";"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 48
        47: .line 580
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
            goto 55
        48: .line 582
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            aload 1 /* expect */
            ldc ";"
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
        49: .line 585
      StackMap locals:
      StackMap stack:
            aload 1 /* expect */
            ldc "*"
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 51
        50: .line 586
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
            goto 55
        51: .line 588
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            aload 1 /* expect */
            ldc "*"
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
        52: .line 591
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            aload 1 /* expect */
        53: .line 592
            new java.lang.String
            dup
            iconst_1
            newarray 5
            dup
            iconst_0
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.lookahead:I
            i2c
            castore
            invokespecial java.lang.String.<init>:([C)V
        54: .line 591
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
        55: .line 594
      StackMap locals:
      StackMap stack:
            aload 2 /* value */
            areturn
        end local 2 // java.lang.String value
        end local 1 // java.lang.String expect
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   56     0    this  Lcom/sun/security/auth/PolicyParser;
            0   56     1  expect  Ljava/lang/String;
            1   56     2   value  Ljava/lang/String;
           10   12     3    form  Ljava/text/MessageFormat;
           11   12     4  source  [Ljava/lang/Object;
    Exceptions:
      throws com.sun.security.auth.PolicyParser$ParsingException, java.io.IOException
    MethodParameters:
        Name  Flags
      expect  

  private void skipEntry();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=1, args_size=1
        start local 0 // com.sun.security.auth.PolicyParser this
         0: .line 604
            goto 11
         1: .line 605
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.lookahead:I
            tableswitch { // -2 - -1
                   -2: 2
                   -1: 7
              default: 10
          }
         2: .line 607
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.lineno:()I
            ldc ";"
         3: .line 608
            new java.lang.StringBuilder
            dup
            getstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
            ldc "number."
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 609
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            getfield java.io.StreamTokenizer.nval:D
            invokestatic java.lang.String.valueOf:(D)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 608
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 607
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(ILjava/lang/String;Ljava/lang/String;)V
            athrow
         7: .line 611
      StackMap locals:
      StackMap stack:
            new com.sun.security.auth.PolicyParser$ParsingException
            dup
         8: .line 612
            getstatic com.sun.security.auth.PolicyParser.rb:Ljava/util/ResourceBundle;
            ldc "expected.read.end.of.file"
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
         9: .line 611
            invokespecial com.sun.security.auth.PolicyParser$ParsingException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 614
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.st:Ljava/io/StreamTokenizer;
            invokevirtual java.io.StreamTokenizer.nextToken:()I
            putfield com.sun.security.auth.PolicyParser.lookahead:I
        11: .line 604
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.security.auth.PolicyParser.lookahead:I
            bipush 59
            if_icmpne 1
        12: .line 617
            return
        end local 0 // com.sun.security.auth.PolicyParser this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lcom/sun/security/auth/PolicyParser;
    Exceptions:
      throws com.sun.security.auth.PolicyParser$ParsingException, java.io.IOException

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // java.lang.String[] arg
         0: .line 958
            new com.sun.security.auth.PolicyParser
            dup
            iconst_1
            invokespecial com.sun.security.auth.PolicyParser.<init>:(Z)V
            astore 1 /* pp */
        start local 1 // com.sun.security.auth.PolicyParser pp
         1: .line 959
            aload 1 /* pp */
            new java.io.FileReader
            dup
            aload 0 /* arg */
            iconst_0
            aaload
            invokespecial java.io.FileReader.<init>:(Ljava/lang/String;)V
            invokevirtual com.sun.security.auth.PolicyParser.read:(Ljava/io/Reader;)V
         2: .line 960
            new java.io.FileWriter
            dup
            aload 0 /* arg */
            iconst_1
            aaload
            invokespecial java.io.FileWriter.<init>:(Ljava/lang/String;)V
            astore 2 /* fr */
        start local 2 // java.io.FileWriter fr
         3: .line 961
            aload 1 /* pp */
            aload 2 /* fr */
            invokevirtual com.sun.security.auth.PolicyParser.write:(Ljava/io/Writer;)V
         4: .line 962
            aload 2 /* fr */
            invokevirtual java.io.FileWriter.close:()V
         5: .line 963
            return
        end local 2 // java.io.FileWriter fr
        end local 1 // com.sun.security.auth.PolicyParser pp
        end local 0 // java.lang.String[] arg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0   arg  [Ljava/lang/String;
            1    6     1    pp  Lcom/sun/security/auth/PolicyParser;
            3    6     2    fr  Ljava/io/FileWriter;
    Exceptions:
      throws java.lang.Exception
    MethodParameters:
      Name  Flags
      arg   
}
SourceFile: "PolicyParser.java"
NestMembers:
  com.sun.security.auth.PolicyParser$1  com.sun.security.auth.PolicyParser$GrantEntry  com.sun.security.auth.PolicyParser$ParsingException  com.sun.security.auth.PolicyParser$PermissionEntry  com.sun.security.auth.PolicyParser$PrincipalEntry
InnerClasses:
  com.sun.security.auth.PolicyParser$1
  GrantEntry = com.sun.security.auth.PolicyParser$GrantEntry of com.sun.security.auth.PolicyParser
  ParsingException = com.sun.security.auth.PolicyParser$ParsingException 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
  public ExpandException = sun.security.util.PropertyExpander$ExpandException of sun.security.util.PropertyExpander
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()