public class java.util.Base64
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: java.util.Base64
  super_class: java.lang.Object
{
  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.Base64 this
         0: .line 80
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // java.util.Base64 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/util/Base64;

  public static java.util.Base64$Encoder getEncoder();
    descriptor: ()Ljava/util/Base64$Encoder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 89
            getstatic java.util.Base64$Encoder.RFC4648:Ljava/util/Base64$Encoder;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.util.Base64$Encoder getUrlEncoder();
    descriptor: ()Ljava/util/Base64$Encoder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 100
            getstatic java.util.Base64$Encoder.RFC4648_URLSAFE:Ljava/util/Base64$Encoder;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.util.Base64$Encoder getMimeEncoder();
    descriptor: ()Ljava/util/Base64$Encoder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 110
            getstatic java.util.Base64$Encoder.RFC2045:Ljava/util/Base64$Encoder;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.util.Base64$Encoder getMimeEncoder(int, byte[]);
    descriptor: (I[B)Ljava/util/Base64$Encoder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // int lineLength
        start local 1 // byte[] lineSeparator
         0: .line 132
            aload 1 /* lineSeparator */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 133
            getstatic java.util.Base64$Decoder.fromBase64:[I
            astore 2 /* base64 */
        start local 2 // int[] base64
         2: .line 134
            aload 1 /* lineSeparator */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 9
      StackMap locals: int byte[] int[] top int int byte[]
      StackMap stack:
         3: aload 6
            iload 4
            baload
            istore 3 /* b */
        start local 3 // byte b
         4: .line 135
            aload 2 /* base64 */
            iload 3 /* b */
            sipush 255
            iand
            iaload
            iconst_m1
            if_icmpeq 8
         5: .line 136
            new java.lang.IllegalArgumentException
            dup
         6: .line 137
            new java.lang.StringBuilder
            dup
            ldc "Illegal base64 line separator character 0x"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* b */
            bipush 16
            invokestatic java.lang.Integer.toString:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 136
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // byte b
         8: .line 134
      StackMap locals:
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
         9: iload 4
            iload 5
            if_icmplt 3
        10: .line 140
            iload 0 /* lineLength */
            bipush -4
            iand
            istore 0 /* lineLength */
        11: .line 141
            iload 0 /* lineLength */
            ifgt 13
        12: .line 142
            getstatic java.util.Base64$Encoder.RFC4648:Ljava/util/Base64$Encoder;
            areturn
        13: .line 144
      StackMap locals: int byte[] int[]
      StackMap stack:
            new java.util.Base64$Encoder
            dup
            iconst_0
            aload 1 /* lineSeparator */
            iload 0 /* lineLength */
            iconst_1
            invokespecial java.util.Base64$Encoder.<init>:(Z[BIZ)V
            areturn
        end local 2 // int[] base64
        end local 1 // byte[] lineSeparator
        end local 0 // int lineLength
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0     lineLength  I
            0   14     1  lineSeparator  [B
            2   14     2         base64  [I
            4    8     3              b  B
    MethodParameters:
               Name  Flags
      lineLength     
      lineSeparator  

  public static java.util.Base64$Decoder getDecoder();
    descriptor: ()Ljava/util/Base64$Decoder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 154
            getstatic java.util.Base64$Decoder.RFC4648:Ljava/util/Base64$Decoder;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.util.Base64$Decoder getUrlDecoder();
    descriptor: ()Ljava/util/Base64$Decoder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 165
            getstatic java.util.Base64$Decoder.RFC4648_URLSAFE:Ljava/util/Base64$Decoder;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.util.Base64$Decoder getMimeDecoder();
    descriptor: ()Ljava/util/Base64$Decoder;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 175
            getstatic java.util.Base64$Decoder.RFC2045:Ljava/util/Base64$Decoder;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "Base64.java"
NestMembers:
  java.util.Base64$DecInputStream  java.util.Base64$Decoder  java.util.Base64$EncOutputStream  java.util.Base64$Encoder
InnerClasses:
  private DecInputStream = java.util.Base64$DecInputStream of java.util.Base64
  public Decoder = java.util.Base64$Decoder of java.util.Base64
  private EncOutputStream = java.util.Base64$EncOutputStream of java.util.Base64
  public Encoder = java.util.Base64$Encoder of java.util.Base64