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

  public static java.lang.RuntimeException wrap(java.io.IOException);
    descriptor: (Ljava/io/IOException;)Ljava/lang/RuntimeException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.io.IOException e
         0: .line 34
            new android.os.ParcelableException
            dup
            aload 0 /* e */
            invokespecial android.os.ParcelableException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.io.IOException e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     e  Ljava/io/IOException;
    MethodParameters:
      Name  Flags
      e     

  public static void maybeUnwrapIOException(java.lang.RuntimeException);
    descriptor: (Ljava/lang/RuntimeException;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.RuntimeException e
         0: .line 38
            aload 0 /* e */
            instanceof android.os.ParcelableException
            ifeq 2
         1: .line 39
            aload 0 /* e */
            checkcast android.os.ParcelableException
            ldc Ljava/io/IOException;
            invokevirtual android.os.ParcelableException.maybeRethrow:(Ljava/lang/Class;)V
         2: .line 41
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.lang.RuntimeException e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     e  Ljava/lang/RuntimeException;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      e     

  public static java.lang.String getCompleteMessage(java.lang.String, java.lang.Throwable);
    descriptor: (Ljava/lang/String;Ljava/lang/Throwable;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.lang.String msg
        start local 1 // java.lang.Throwable t
         0: .line 44
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* builder */
        start local 2 // java.lang.StringBuilder builder
         1: .line 45
            aload 0 /* msg */
            ifnull 3
         2: .line 46
            aload 2 /* builder */
            aload 0 /* msg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 48
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 2 /* builder */
            aload 1 /* t */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 49
            goto 6
         5: .line 50
      StackMap locals:
      StackMap stack:
            aload 2 /* builder */
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* t */
            invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         6: .line 49
      StackMap locals:
      StackMap stack:
            aload 1 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            dup
            astore 1 /* t */
            ifnonnull 5
         7: .line 52
            aload 2 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder builder
        end local 1 // java.lang.Throwable t
        end local 0 // java.lang.String msg
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0      msg  Ljava/lang/String;
            0    8     1        t  Ljava/lang/Throwable;
            1    8     2  builder  Ljava/lang/StringBuilder;
    MethodParameters:
      Name  Flags
      msg   
      t     

  public static java.lang.String getCompleteMessage(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Throwable t
         0: .line 56
            aconst_null
            aload 0 /* t */
            invokestatic android.util.ExceptionUtils.getCompleteMessage:(Ljava/lang/String;Ljava/lang/Throwable;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.Throwable t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     t  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      t     

  public static <E extends java.lang.Throwable> void propagateIfInstanceOf(java.lang.Throwable, java.lang.Class<E>) throws E;
    descriptor: (Ljava/lang/Throwable;Ljava/lang/Class;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Throwable t
        start local 1 // java.lang.Class c
         0: .line 61
            aload 0 /* t */
            ifnull 2
            aload 1 /* c */
            aload 0 /* t */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 62
            aload 1 /* c */
            aload 0 /* t */
            invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Throwable
            athrow
         2: .line 64
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Class c
        end local 0 // java.lang.Throwable t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     t  Ljava/lang/Throwable;
            0    3     1     c  Ljava/lang/Class<TE;>;
    Exceptions:
      throws java.lang.Throwable
    Signature: <E:Ljava/lang/Throwable;>(Ljava/lang/Throwable;Ljava/lang/Class<TE;>;)V^TE;
    MethodParameters:
      Name  Flags
      t     
      c     

  public static <E extends java.lang.Exception> java.lang.RuntimeException propagate(java.lang.Throwable, java.lang.Class<E>) throws E;
    descriptor: (Ljava/lang/Throwable;Ljava/lang/Class;)Ljava/lang/RuntimeException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Throwable t
        start local 1 // java.lang.Class c
         0: .line 71
            aload 0 /* t */
            aload 1 /* c */
            invokestatic android.util.ExceptionUtils.propagateIfInstanceOf:(Ljava/lang/Throwable;Ljava/lang/Class;)V
         1: .line 72
            aload 0 /* t */
            invokestatic android.util.ExceptionUtils.propagate:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            areturn
        end local 1 // java.lang.Class c
        end local 0 // java.lang.Throwable t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     t  Ljava/lang/Throwable;
            0    2     1     c  Ljava/lang/Class<TE;>;
    Exceptions:
      throws java.lang.Exception
    Signature: <E:Ljava/lang/Exception;>(Ljava/lang/Throwable;Ljava/lang/Class<TE;>;)Ljava/lang/RuntimeException;^TE;
    MethodParameters:
      Name  Flags
      t     
      c     

  public static java.lang.RuntimeException propagate(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.Throwable t
         0: .line 76
            aload 0 /* t */
            invokestatic com.android.internal.util.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 77
            aload 0 /* t */
            ldc Ljava/lang/Error;
            invokestatic android.util.ExceptionUtils.propagateIfInstanceOf:(Ljava/lang/Throwable;Ljava/lang/Class;)V
         2: .line 78
            aload 0 /* t */
            ldc Ljava/lang/RuntimeException;
            invokestatic android.util.ExceptionUtils.propagateIfInstanceOf:(Ljava/lang/Throwable;Ljava/lang/Class;)V
         3: .line 79
            new java.lang.RuntimeException
            dup
            aload 0 /* t */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.lang.Throwable t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     t  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      t     

  public static java.lang.Throwable getRootCause(java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;)Ljava/lang/Throwable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.Throwable t
         0: .line 86
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            astore 0 /* t */
      StackMap locals:
      StackMap stack:
         2: aload 0 /* t */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            ifnonnull 1
         3: .line 87
            aload 0 /* t */
            areturn
        end local 0 // java.lang.Throwable t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     t  Ljava/lang/Throwable;
    MethodParameters:
      Name  Flags
      t     

  public static java.lang.Throwable appendCause(java.lang.Throwable, java.lang.Throwable);
    descriptor: (Ljava/lang/Throwable;Ljava/lang/Throwable;)Ljava/lang/Throwable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.Throwable t
        start local 1 // java.lang.Throwable cause
         0: .line 96
            aload 1 /* cause */
            ifnull 2
         1: .line 97
            aload 0 /* t */
            invokestatic android.util.ExceptionUtils.getRootCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            aload 1 /* cause */
            invokevirtual java.lang.Throwable.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
         2: .line 99
      StackMap locals:
      StackMap stack:
            aload 0 /* t */
            areturn
        end local 1 // java.lang.Throwable cause
        end local 0 // java.lang.Throwable t
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0      t  Ljava/lang/Throwable;
            0    3     1  cause  Ljava/lang/Throwable;
    MethodParameters:
       Name  Flags
      t      
      cause  
}
SourceFile: "ExceptionUtils.java"