public abstract class android.os.AsyncTask<Params, Progress, Result>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: android.os.AsyncTask
  super_class: java.lang.Object
{
  private static final java.lang.String LOG_TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "AsyncTask"

  private static final int CPU_COUNT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int CORE_POOL_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int MAXIMUM_POOL_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int KEEP_ALIVE_SECONDS;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 30

  private static final java.util.concurrent.ThreadFactory sThreadFactory;
    descriptor: Ljava/util/concurrent/ThreadFactory;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.util.concurrent.BlockingQueue<java.lang.Runnable> sPoolWorkQueue;
    descriptor: Ljava/util/concurrent/BlockingQueue;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;

  public static final java.util.concurrent.Executor THREAD_POOL_EXECUTOR;
    descriptor: Ljava/util/concurrent/Executor;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.util.concurrent.Executor SERIAL_EXECUTOR;
    descriptor: Ljava/util/concurrent/Executor;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static final int MESSAGE_POST_RESULT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int MESSAGE_POST_PROGRESS;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static volatile java.util.concurrent.Executor sDefaultExecutor;
    descriptor: Ljava/util/concurrent/Executor;
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  private static android.os.AsyncTask$InternalHandler sHandler;
    descriptor: Landroid/os/AsyncTask$InternalHandler;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private final android.os.AsyncTask$WorkerRunnable<Params, Result> mWorker;
    descriptor: Landroid/os/AsyncTask$WorkerRunnable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Landroid/os/AsyncTask$WorkerRunnable<TParams;TResult;>;

  private final java.util.concurrent.FutureTask<Result> mFuture;
    descriptor: Ljava/util/concurrent/FutureTask;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/FutureTask<TResult;>;

  private volatile android.os.AsyncTask$Status mStatus;
    descriptor: Landroid/os/AsyncTask$Status;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Landroid/os/AsyncTask$Status;

  private final java.util.concurrent.atomic.AtomicBoolean mCancelled;
    descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.atomic.AtomicBoolean mTaskInvoked;
    descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final android.os.Handler mHandler;
    descriptor: Landroid/os/Handler;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$android$os$AsyncTask$Status;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=9, locals=1, args_size=0
         0: .line 183
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            invokevirtual java.lang.Runtime.availableProcessors:()I
            putstatic android.os.AsyncTask.CPU_COUNT:I
         1: .line 187
            iconst_2
            getstatic android.os.AsyncTask.CPU_COUNT:I
            iconst_1
            isub
            iconst_4
            invokestatic java.lang.Math.min:(II)I
            invokestatic java.lang.Math.max:(II)I
            putstatic android.os.AsyncTask.CORE_POOL_SIZE:I
         2: .line 188
            getstatic android.os.AsyncTask.CPU_COUNT:I
            iconst_2
            imul
            iconst_1
            iadd
            putstatic android.os.AsyncTask.MAXIMUM_POOL_SIZE:I
         3: .line 191
            new android.os.AsyncTask$1
            dup
            invokespecial android.os.AsyncTask$1.<init>:()V
            putstatic android.os.AsyncTask.sThreadFactory:Ljava/util/concurrent/ThreadFactory;
         4: .line 200
            new java.util.concurrent.LinkedBlockingQueue
            dup
            sipush 128
            invokespecial java.util.concurrent.LinkedBlockingQueue.<init>:(I)V
         5: .line 199
            putstatic android.os.AsyncTask.sPoolWorkQueue:Ljava/util/concurrent/BlockingQueue;
         6: .line 208
            new java.util.concurrent.ThreadPoolExecutor
            dup
         7: .line 209
            getstatic android.os.AsyncTask.CORE_POOL_SIZE:I
            getstatic android.os.AsyncTask.MAXIMUM_POOL_SIZE:I
            ldc 30
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
         8: .line 210
            getstatic android.os.AsyncTask.sPoolWorkQueue:Ljava/util/concurrent/BlockingQueue;
            getstatic android.os.AsyncTask.sThreadFactory:Ljava/util/concurrent/ThreadFactory;
         9: .line 208
            invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
            astore 0 /* threadPoolExecutor */
        start local 0 // java.util.concurrent.ThreadPoolExecutor threadPoolExecutor
        10: .line 211
            aload 0 /* threadPoolExecutor */
            iconst_1
            invokevirtual java.util.concurrent.ThreadPoolExecutor.allowCoreThreadTimeOut:(Z)V
        11: .line 212
            aload 0 /* threadPoolExecutor */
            putstatic android.os.AsyncTask.THREAD_POOL_EXECUTOR:Ljava/util/concurrent/Executor;
        end local 0 // java.util.concurrent.ThreadPoolExecutor threadPoolExecutor
        12: .line 219
            new android.os.AsyncTask$SerialExecutor
            dup
            invokespecial android.os.AsyncTask$SerialExecutor.<init>:()V
            putstatic android.os.AsyncTask.SERIAL_EXECUTOR:Ljava/util/concurrent/Executor;
        13: .line 224
            getstatic android.os.AsyncTask.SERIAL_EXECUTOR:Ljava/util/concurrent/Executor;
            putstatic android.os.AsyncTask.sDefaultExecutor:Ljava/util/concurrent/Executor;
        14: .line 225
            return
      LocalVariableTable:
        Start  End  Slot                Name  Signature
           10   12     0  threadPoolExecutor  Ljava/util/concurrent/ThreadPoolExecutor;

  private static android.os.Handler getMainHandler();
    descriptor: ()Landroid/os/Handler;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 283
            ldc Landroid/os/AsyncTask;
            dup
            astore 0
            monitorenter
         1: .line 284
            getstatic android.os.AsyncTask.sHandler:Landroid/os/AsyncTask$InternalHandler;
            ifnonnull 3
         2: .line 285
            new android.os.AsyncTask$InternalHandler
            dup
            invokestatic android.os.Looper.getMainLooper:()Landroid/os/Looper;
            invokespecial android.os.AsyncTask$InternalHandler.<init>:(Landroid/os/Looper;)V
            putstatic android.os.AsyncTask.sHandler:Landroid/os/AsyncTask$InternalHandler;
         3: .line 287
      StackMap locals: java.lang.Class
      StackMap stack:
            getstatic android.os.AsyncTask.sHandler:Landroid/os/AsyncTask$InternalHandler;
            aload 0
            monitorexit
         4: areturn
         5: .line 283
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 0
            monitorexit
         6: athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any

  private android.os.Handler getHandler();
    descriptor: ()Landroid/os/Handler;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.os.AsyncTask this
         0: .line 292
            aload 0 /* this */
            getfield android.os.AsyncTask.mHandler:Landroid/os/Handler;
            areturn
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;

  public static void setDefaultExecutor(java.util.concurrent.Executor);
    descriptor: (Ljava/util/concurrent/Executor;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.concurrent.Executor exec
         0: .line 297
            aload 0 /* exec */
            putstatic android.os.AsyncTask.sDefaultExecutor:Ljava/util/concurrent/Executor;
         1: .line 298
            return
        end local 0 // java.util.concurrent.Executor exec
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  exec  Ljava/util/concurrent/Executor;
    MethodParameters:
      Name  Flags
      exec  

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.os.AsyncTask this
         0: .line 304
            aload 0 /* this */
            aconst_null
            invokespecial android.os.AsyncTask.<init>:(Landroid/os/Looper;)V
         1: .line 305
            return
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;

  public void <init>(android.os.Handler);
    descriptor: (Landroid/os/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // android.os.Handler handler
         0: .line 313
            aload 0 /* this */
            aload 1 /* handler */
            ifnull 1
            aload 1 /* handler */
            invokevirtual android.os.Handler.getLooper:()Landroid/os/Looper;
            goto 2
      StackMap locals:
      StackMap stack: uninitialized-this
         1: aconst_null
      StackMap locals: uninitialized-this android.os.Handler
      StackMap stack: uninitialized-this android.os.Looper
         2: invokespecial android.os.AsyncTask.<init>:(Landroid/os/Looper;)V
         3: .line 314
            return
        end local 1 // android.os.Handler handler
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    4     1  handler  Landroid/os/Handler;
    MethodParameters:
         Name  Flags
      handler  

  public void <init>(android.os.Looper);
    descriptor: (Landroid/os/Looper;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // android.os.Looper callbackLooper
         0: .line 321
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 230
            aload 0 /* this */
            getstatic android.os.AsyncTask$Status.PENDING:Landroid/os/AsyncTask$Status;
            putfield android.os.AsyncTask.mStatus:Landroid/os/AsyncTask$Status;
         2: .line 232
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
            putfield android.os.AsyncTask.mCancelled:Ljava/util/concurrent/atomic/AtomicBoolean;
         3: .line 233
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicBoolean
            dup
            invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:()V
            putfield android.os.AsyncTask.mTaskInvoked:Ljava/util/concurrent/atomic/AtomicBoolean;
         4: .line 322
            aload 0 /* this */
            aload 1 /* callbackLooper */
            ifnull 5
            aload 1 /* callbackLooper */
            invokestatic android.os.Looper.getMainLooper:()Landroid/os/Looper;
            if_acmpne 6
         5: .line 323
      StackMap locals: android.os.AsyncTask android.os.Looper
      StackMap stack: android.os.AsyncTask
            invokestatic android.os.AsyncTask.getMainHandler:()Landroid/os/Handler;
            goto 7
         6: .line 324
      StackMap locals:
      StackMap stack: android.os.AsyncTask
            new android.os.Handler
            dup
            aload 1 /* callbackLooper */
            invokespecial android.os.Handler.<init>:(Landroid/os/Looper;)V
         7: .line 322
      StackMap locals: android.os.AsyncTask android.os.Looper
      StackMap stack: android.os.AsyncTask android.os.Handler
            putfield android.os.AsyncTask.mHandler:Landroid/os/Handler;
         8: .line 326
            aload 0 /* this */
            new android.os.AsyncTask$2
            dup
            aload 0 /* this */
            invokespecial android.os.AsyncTask$2.<init>:(Landroid/os/AsyncTask;)V
            putfield android.os.AsyncTask.mWorker:Landroid/os/AsyncTask$WorkerRunnable;
         9: .line 345
            aload 0 /* this */
            new android.os.AsyncTask$3
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield android.os.AsyncTask.mWorker:Landroid/os/AsyncTask$WorkerRunnable;
            invokespecial android.os.AsyncTask$3.<init>:(Landroid/os/AsyncTask;Ljava/util/concurrent/Callable;)V
            putfield android.os.AsyncTask.mFuture:Ljava/util/concurrent/FutureTask;
        10: .line 360
            return
        end local 1 // android.os.Looper callbackLooper
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0            this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0   11     1  callbackLooper  Landroid/os/Looper;
    MethodParameters:
                Name  Flags
      callbackLooper  

  private void postResultIfNotInvoked();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // java.lang.Object result
         0: .line 363
            aload 0 /* this */
            getfield android.os.AsyncTask.mTaskInvoked:Ljava/util/concurrent/atomic/AtomicBoolean;
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
            istore 2 /* wasTaskInvoked */
        start local 2 // boolean wasTaskInvoked
         1: .line 364
            iload 2 /* wasTaskInvoked */
            ifne 3
         2: .line 365
            aload 0 /* this */
            aload 1 /* result */
            invokevirtual android.os.AsyncTask.postResult:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 367
      StackMap locals: int
      StackMap stack:
            return
        end local 2 // boolean wasTaskInvoked
        end local 1 // java.lang.Object result
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    4     1          result  TResult;
            1    4     2  wasTaskInvoked  Z
    Signature: (TResult;)V
    MethodParameters:
        Name  Flags
      result  

  private Result postResult();
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=3, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // java.lang.Object result
         0: .line 371
            aload 0 /* this */
            invokevirtual android.os.AsyncTask.getHandler:()Landroid/os/Handler;
            iconst_1
         1: .line 372
            new android.os.AsyncTask$AsyncTaskResult
            dup
            aload 0 /* this */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* result */
            aastore
            invokespecial android.os.AsyncTask$AsyncTaskResult.<init>:(Landroid/os/AsyncTask;[Ljava/lang/Object;)V
         2: .line 371
            invokevirtual android.os.Handler.obtainMessage:(ILjava/lang/Object;)Landroid/os/Message;
            astore 2 /* message */
        start local 2 // android.os.Message message
         3: .line 373
            aload 2 /* message */
            invokevirtual android.os.Message.sendToTarget:()V
         4: .line 374
            aload 1 /* result */
            areturn
        end local 2 // android.os.Message message
        end local 1 // java.lang.Object result
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    5     1   result  TResult;
            3    5     2  message  Landroid/os/Message;
    Signature: (TResult;)TResult;
    MethodParameters:
        Name  Flags
      result  

  public final android.os.AsyncTask$Status getStatus();
    descriptor: ()Landroid/os/AsyncTask$Status;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.os.AsyncTask this
         0: .line 383
            aload 0 /* this */
            getfield android.os.AsyncTask.mStatus:Landroid/os/AsyncTask$Status;
            areturn
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
    Signature: ()Landroid/os/AsyncTask$Status;

  protected abstract Result doInBackground();
    descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0484) ACC_PROTECTED, ACC_VARARGS, ACC_ABSTRACT
    Signature: ([TParams;)TResult;
    MethodParameters:
        Name  Flags
      params  

  protected void onPreExecute();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // android.os.AsyncTask this
         0: .line 413
            return
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;

  protected void onPostExecute();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // java.lang.Object result
         0: .line 430
            return
        end local 1 // java.lang.Object result
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    1     1  result  TResult;
    Signature: (TResult;)V
    MethodParameters:
        Name  Flags
      result  

  protected void onProgressUpdate();
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // java.lang.Object[] values
         0: .line 444
            return
        end local 1 // java.lang.Object[] values
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    1     1  values  [Ljava/lang/Object;
    Signature: ([TProgress;)V
    MethodParameters:
        Name  Flags
      values  

  protected void onCancelled();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // java.lang.Object result
         0: .line 463
            aload 0 /* this */
            invokevirtual android.os.AsyncTask.onCancelled:()V
         1: .line 464
            return
        end local 1 // java.lang.Object result
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    2     1  result  TResult;
    Signature: (TResult;)V
    MethodParameters:
        Name  Flags
      result  

  protected void onCancelled();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // android.os.AsyncTask this
         0: .line 480
            return
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;

  public final boolean isCancelled();
    descriptor: ()Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.os.AsyncTask this
         0: .line 493
            aload 0 /* this */
            getfield android.os.AsyncTask.mCancelled:Ljava/util/concurrent/atomic/AtomicBoolean;
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
            ireturn
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;

  public final boolean cancel(boolean);
    descriptor: (Z)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // boolean mayInterruptIfRunning
         0: .line 526
            aload 0 /* this */
            getfield android.os.AsyncTask.mCancelled:Ljava/util/concurrent/atomic/AtomicBoolean;
            iconst_1
            invokevirtual java.util.concurrent.atomic.AtomicBoolean.set:(Z)V
         1: .line 527
            aload 0 /* this */
            getfield android.os.AsyncTask.mFuture:Ljava/util/concurrent/FutureTask;
            iload 1 /* mayInterruptIfRunning */
            invokevirtual java.util.concurrent.FutureTask.cancel:(Z)Z
            ireturn
        end local 1 // boolean mayInterruptIfRunning
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    2     0                   this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    2     1  mayInterruptIfRunning  Z
    MethodParameters:
                       Name  Flags
      mayInterruptIfRunning  

  public final Result get();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.os.AsyncTask this
         0: .line 542
            aload 0 /* this */
            getfield android.os.AsyncTask.mFuture:Ljava/util/concurrent/FutureTask;
            invokevirtual java.util.concurrent.FutureTask.get:()Ljava/lang/Object;
            areturn
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
    Exceptions:
      throws java.lang.InterruptedException, java.util.concurrent.ExecutionException
    Signature: ()TResult;

  public final Result get(long, java.util.concurrent.TimeUnit);
    descriptor: (JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // android.os.AsyncTask this
        start local 1 // long timeout
        start local 3 // java.util.concurrent.TimeUnit unit
         0: .line 562
            aload 0 /* this */
            getfield android.os.AsyncTask.mFuture:Ljava/util/concurrent/FutureTask;
            lload 1 /* timeout */
            aload 3 /* unit */
            invokevirtual java.util.concurrent.FutureTask.get:(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
            areturn
        end local 3 // java.util.concurrent.TimeUnit unit
        end local 1 // long timeout
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    1     1  timeout  J
            0    1     3     unit  Ljava/util/concurrent/TimeUnit;
    Exceptions:
      throws java.lang.InterruptedException, java.util.concurrent.ExecutionException, java.util.concurrent.TimeoutException
    Signature: (JLjava/util/concurrent/TimeUnit;)TResult;
    MethodParameters:
         Name  Flags
      timeout  
      unit     

  public final android.os.AsyncTask<Params, Progress, Result> execute(Params[]);
    descriptor: ([Ljava/lang/Object;)Landroid/os/AsyncTask;
    flags: (0x0091) ACC_PUBLIC, ACC_FINAL, ACC_VARARGS
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // java.lang.Object[] params
         0: .line 595
            aload 0 /* this */
            getstatic android.os.AsyncTask.sDefaultExecutor:Ljava/util/concurrent/Executor;
            aload 1 /* params */
            invokevirtual android.os.AsyncTask.executeOnExecutor:(Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/os/AsyncTask;
            areturn
        end local 1 // java.lang.Object[] params
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    1     1  params  [Ljava/lang/Object;
    Signature: ([TParams;)Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
    MethodParameters:
        Name  Flags
      params  

  public final android.os.AsyncTask<Params, Progress, Result> executeOnExecutor(java.util.concurrent.Executor, Params[]);
    descriptor: (Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/os/AsyncTask;
    flags: (0x0091) ACC_PUBLIC, ACC_FINAL, ACC_VARARGS
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.os.AsyncTask this
        start local 1 // java.util.concurrent.Executor exec
        start local 2 // java.lang.Object[] params
         0: .line 634
            aload 0 /* this */
            getfield android.os.AsyncTask.mStatus:Landroid/os/AsyncTask$Status;
            getstatic android.os.AsyncTask$Status.PENDING:Landroid/os/AsyncTask$Status;
            if_acmpeq 4
         1: .line 635
            invokestatic android.os.AsyncTask.$SWITCH_TABLE$android$os$AsyncTask$Status:()[I
            aload 0 /* this */
            getfield android.os.AsyncTask.mStatus:Landroid/os/AsyncTask$Status;
            invokevirtual android.os.AsyncTask$Status.ordinal:()I
            iaload
            tableswitch { // 2 - 3
                    2: 2
                    3: 3
              default: 4
          }
         2: .line 637
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            ldc "Cannot execute task: the task is already running."
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 640
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            ldc "Cannot execute task: the task has already been executed (a task can be executed only once)"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 646
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic android.os.AsyncTask$Status.RUNNING:Landroid/os/AsyncTask$Status;
            putfield android.os.AsyncTask.mStatus:Landroid/os/AsyncTask$Status;
         5: .line 648
            aload 0 /* this */
            invokevirtual android.os.AsyncTask.onPreExecute:()V
         6: .line 650
            aload 0 /* this */
            getfield android.os.AsyncTask.mWorker:Landroid/os/AsyncTask$WorkerRunnable;
            aload 2 /* params */
            putfield android.os.AsyncTask$WorkerRunnable.mParams:[Ljava/lang/Object;
         7: .line 651
            aload 1 /* exec */
            aload 0 /* this */
            getfield android.os.AsyncTask.mFuture:Ljava/util/concurrent/FutureTask;
            invokeinterface java.util.concurrent.Executor.execute:(Ljava/lang/Runnable;)V
         8: .line 653
            aload 0 /* this */
            areturn
        end local 2 // java.lang.Object[] params
        end local 1 // java.util.concurrent.Executor exec
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    9     1    exec  Ljava/util/concurrent/Executor;
            0    9     2  params  [Ljava/lang/Object;
    Signature: (Ljava/util/concurrent/Executor;[TParams;)Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
    MethodParameters:
        Name  Flags
      exec    
      params  

  public static void execute(java.lang.Runnable);
    descriptor: (Ljava/lang/Runnable;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Runnable runnable
         0: .line 666
            getstatic android.os.AsyncTask.sDefaultExecutor:Ljava/util/concurrent/Executor;
            aload 0 /* runnable */
            invokeinterface java.util.concurrent.Executor.execute:(Ljava/lang/Runnable;)V
         1: .line 667
            return
        end local 0 // java.lang.Runnable runnable
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0  runnable  Ljava/lang/Runnable;
    MethodParameters:
          Name  Flags
      runnable  

  protected final void publishProgress();
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0094) ACC_PROTECTED, ACC_FINAL, ACC_VARARGS
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // java.lang.Object[] values
         0: .line 685
            aload 0 /* this */
            invokevirtual android.os.AsyncTask.isCancelled:()Z
            ifne 5
         1: .line 686
            aload 0 /* this */
            invokevirtual android.os.AsyncTask.getHandler:()Landroid/os/Handler;
            iconst_2
         2: .line 687
            new android.os.AsyncTask$AsyncTaskResult
            dup
            aload 0 /* this */
            aload 1 /* values */
            invokespecial android.os.AsyncTask$AsyncTaskResult.<init>:(Landroid/os/AsyncTask;[Ljava/lang/Object;)V
         3: .line 686
            invokevirtual android.os.Handler.obtainMessage:(ILjava/lang/Object;)Landroid/os/Message;
         4: .line 687
            invokevirtual android.os.Message.sendToTarget:()V
         5: .line 689
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object[] values
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    6     1  values  [Ljava/lang/Object;
    Signature: ([TProgress;)V
    MethodParameters:
        Name  Flags
      values  

  private void finish();
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.os.AsyncTask this
        start local 1 // java.lang.Object result
         0: .line 692
            aload 0 /* this */
            invokevirtual android.os.AsyncTask.isCancelled:()Z
            ifeq 3
         1: .line 693
            aload 0 /* this */
            aload 1 /* result */
            invokevirtual android.os.AsyncTask.onCancelled:(Ljava/lang/Object;)V
         2: .line 694
            goto 4
         3: .line 695
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* result */
            invokevirtual android.os.AsyncTask.onPostExecute:(Ljava/lang/Object;)V
         4: .line 697
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic android.os.AsyncTask$Status.FINISHED:Landroid/os/AsyncTask$Status;
            putfield android.os.AsyncTask.mStatus:Landroid/os/AsyncTask$Status;
         5: .line 698
            return
        end local 1 // java.lang.Object result
        end local 0 // android.os.AsyncTask this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Landroid/os/AsyncTask<TParams;TProgress;TResult;>;
            0    6     1  result  TResult;
    Signature: (TResult;)V
    MethodParameters:
        Name  Flags
      result  

  static int[] $SWITCH_TABLE$android$os$AsyncTask$Status();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 180
            getstatic android.os.AsyncTask.$SWITCH_TABLE$android$os$AsyncTask$Status:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic android.os.AsyncTask$Status.values:()[Landroid/os/AsyncTask$Status;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic android.os.AsyncTask$Status.FINISHED:Landroid/os/AsyncTask$Status;
            invokevirtual android.os.AsyncTask$Status.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic android.os.AsyncTask$Status.PENDING:Landroid/os/AsyncTask$Status;
            invokevirtual android.os.AsyncTask$Status.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic android.os.AsyncTask$Status.RUNNING:Landroid/os/AsyncTask$Status;
            invokevirtual android.os.AsyncTask$Status.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic android.os.AsyncTask.$SWITCH_TABLE$android$os$AsyncTask$Status:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
}
Signature: <Params:Ljava/lang/Object;Progress:Ljava/lang/Object;Result:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "AsyncTask.java"
NestMembers:
  android.os.AsyncTask$1  android.os.AsyncTask$2  android.os.AsyncTask$3  android.os.AsyncTask$AsyncTaskResult  android.os.AsyncTask$InternalHandler  android.os.AsyncTask$SerialExecutor  android.os.AsyncTask$SerialExecutor$1  android.os.AsyncTask$Status  android.os.AsyncTask$WorkerRunnable
InnerClasses:
  android.os.AsyncTask$1
  android.os.AsyncTask$2
  android.os.AsyncTask$3
  private AsyncTaskResult = android.os.AsyncTask$AsyncTaskResult of android.os.AsyncTask
  private InternalHandler = android.os.AsyncTask$InternalHandler of android.os.AsyncTask
  private SerialExecutor = android.os.AsyncTask$SerialExecutor of android.os.AsyncTask
  public final Status = android.os.AsyncTask$Status of android.os.AsyncTask
  private abstract WorkerRunnable = android.os.AsyncTask$WorkerRunnable of android.os.AsyncTask