public class com.android.wallpaperbackup.WallpaperBackupAgent extends android.app.backup.BackupAgent
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.android.wallpaperbackup.WallpaperBackupAgent
  super_class: android.app.backup.BackupAgent
{
  private static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "WallpaperBackup"

  private static final boolean DEBUG;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  static final java.lang.String WALLPAPER;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "wallpaper_orig"

  static final java.lang.String WALLPAPER_LOCK;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "wallpaper_lock_orig"

  static final java.lang.String WALLPAPER_INFO;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "wallpaper_info.xml"

  static final java.lang.String IMAGE_STAGE;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "wallpaper-stage"

  static final java.lang.String LOCK_IMAGE_STAGE;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "wallpaper-lock-stage"

  static final java.lang.String INFO_STAGE;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "wallpaper-info-stage"

  static final java.lang.String EMPTY_SENTINEL;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "empty"

  static final java.lang.String QUOTA_SENTINEL;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "quota"

  static final java.lang.String PREFS_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "wbprefs.xml"

  static final java.lang.String SYSTEM_GENERATION;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "system_gen"

  static final java.lang.String LOCK_GENERATION;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "lock_gen"

  private java.io.File mWallpaperInfo;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private java.io.File mWallpaperFile;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private java.io.File mLockWallpaperFile;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private java.io.File mQuotaFile;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

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

  private android.app.WallpaperManager mWm;
    descriptor: Landroid/app/WallpaperManager;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
         0: .line 52
            aload 0 /* this */
            invokespecial android.app.backup.BackupAgent.<init>:()V
            return
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;

  public void onCreate();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
         0: .line 92
            iconst_0
            invokestatic android.os.Environment.getUserSystemDirectory:(I)Ljava/io/File;
            astore 1 /* wallpaperDir */
        start local 1 // java.io.File wallpaperDir
         1: .line 93
            aload 0 /* this */
            new java.io.File
            dup
            aload 1 /* wallpaperDir */
            ldc "wallpaper_info.xml"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            putfield com.android.wallpaperbackup.WallpaperBackupAgent.mWallpaperInfo:Ljava/io/File;
         2: .line 94
            aload 0 /* this */
            new java.io.File
            dup
            aload 1 /* wallpaperDir */
            ldc "wallpaper_orig"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            putfield com.android.wallpaperbackup.WallpaperBackupAgent.mWallpaperFile:Ljava/io/File;
         3: .line 95
            aload 0 /* this */
            new java.io.File
            dup
            aload 1 /* wallpaperDir */
            ldc "wallpaper_lock_orig"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            putfield com.android.wallpaperbackup.WallpaperBackupAgent.mLockWallpaperFile:Ljava/io/File;
         4: .line 96
            aload 0 /* this */
            aload 0 /* this */
            ldc "wallpaper"
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.getSystemService:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast android.app.WallpaperManager
            putfield com.android.wallpaperbackup.WallpaperBackupAgent.mWm:Landroid/app/WallpaperManager;
         5: .line 98
            aload 0 /* this */
            new java.io.File
            dup
            aload 0 /* this */
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.getFilesDir:()Ljava/io/File;
            ldc "quota"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            putfield com.android.wallpaperbackup.WallpaperBackupAgent.mQuotaFile:Ljava/io/File;
         6: .line 99
            aload 0 /* this */
            aload 0 /* this */
            getfield com.android.wallpaperbackup.WallpaperBackupAgent.mQuotaFile:Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            putfield com.android.wallpaperbackup.WallpaperBackupAgent.mQuotaExceeded:Z
         7: .line 103
            return
        end local 1 // java.io.File wallpaperDir
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
            1    8     1  wallpaperDir  Ljava/io/File;

  public void onFullBackup(android.app.backup.FullBackupDataOutput);
    descriptor: (Landroid/app/backup/FullBackupDataOutput;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
         0: .line 140
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tIoUtils cannot be resolved\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      data  

  public void onQuotaExceeded(long, long);
    descriptor: (JJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
        start local 1 // long backupDataBytes
        start local 3 // long quotaBytes
         0: .line 195
            aconst_null
            astore 5
            aconst_null
            astore 6
         1: new java.io.FileOutputStream
            dup
            aload 0 /* this */
            getfield com.android.wallpaperbackup.WallpaperBackupAgent.mQuotaFile:Ljava/io/File;
            invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
            astore 7 /* f */
        start local 7 // java.io.FileOutputStream f
         2: .line 196
            aload 7 /* f */
            iconst_0
            invokevirtual java.io.FileOutputStream.write:(I)V
         3: .line 197
            aload 7 /* f */
            ifnull 11
            aload 7 /* f */
            invokevirtual java.io.FileOutputStream.close:()V
            goto 11
      StackMap locals: com.android.wallpaperbackup.WallpaperBackupAgent long long java.lang.Throwable java.lang.Throwable java.io.FileOutputStream
      StackMap stack: java.lang.Throwable
         4: astore 5
            aload 7 /* f */
            ifnull 5
            aload 7 /* f */
            invokevirtual java.io.FileOutputStream.close:()V
        end local 7 // java.io.FileOutputStream f
      StackMap locals:
      StackMap stack:
         5: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: astore 6
            aload 5
            ifnonnull 7
            aload 6
            astore 5
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 5
            aload 6
            if_acmpeq 8
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
         8: aload 5
            athrow
      StackMap locals: com.android.wallpaperbackup.WallpaperBackupAgent long long
      StackMap stack: java.lang.Exception
         9: astore 5 /* e */
        start local 5 // java.lang.Exception e
        10: .line 198
            ldc "WallpaperBackup"
            new java.lang.StringBuilder
            dup
            ldc "Unable to record quota-exceeded: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic android.util.Slog.w:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        end local 5 // java.lang.Exception e
        11: .line 200
      StackMap locals:
      StackMap stack:
            return
        end local 3 // long quotaBytes
        end local 1 // long backupDataBytes
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   12     0             this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
            0   12     1  backupDataBytes  J
            0   12     3       quotaBytes  J
            2    5     7                f  Ljava/io/FileOutputStream;
           10   11     5                e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2     3       4  any
           1     6       6  any
           0     9       9  Class java.lang.Exception
    MethodParameters:
                 Name  Flags
      backupDataBytes  
      quotaBytes       

  public void onRestoreFinished();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=1
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
         0: .line 209
            aload 0 /* this */
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.getFilesDir:()Ljava/io/File;
            astore 1 /* filesDir */
        start local 1 // java.io.File filesDir
         1: .line 210
            new java.io.File
            dup
            aload 1 /* filesDir */
            ldc "wallpaper-info-stage"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 2 /* infoStage */
        start local 2 // java.io.File infoStage
         2: .line 211
            new java.io.File
            dup
            aload 1 /* filesDir */
            ldc "wallpaper-stage"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 3 /* imageStage */
        start local 3 // java.io.File imageStage
         3: .line 212
            new java.io.File
            dup
            aload 1 /* filesDir */
            ldc "wallpaper-lock-stage"
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            astore 4 /* lockImageStage */
        start local 4 // java.io.File lockImageStage
         4: .line 217
            iconst_1
            aload 4 /* lockImageStage */
            invokevirtual java.io.File.exists:()Z
            ifeq 5
            iconst_0
            goto 6
      StackMap locals: com.android.wallpaperbackup.WallpaperBackupAgent java.io.File java.io.File java.io.File java.io.File
      StackMap stack: int
         5: iconst_2
      StackMap locals: com.android.wallpaperbackup.WallpaperBackupAgent java.io.File java.io.File java.io.File java.io.File
      StackMap stack: int int
         6: ior
            istore 5 /* sysWhich */
        start local 5 // int sysWhich
         7: .line 223
            aload 0 /* this */
            aload 3 /* imageStage */
            aload 2 /* infoStage */
            ldc "wp"
            iload 5 /* sysWhich */
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.restoreFromStage:(Ljava/io/File;Ljava/io/File;Ljava/lang/String;I)V
         8: .line 224
            aload 0 /* this */
            aload 4 /* lockImageStage */
            aload 2 /* infoStage */
            ldc "kwp"
            iconst_2
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.restoreFromStage:(Ljava/io/File;Ljava/io/File;Ljava/lang/String;I)V
         9: .line 227
            aload 0 /* this */
            aload 2 /* infoStage */
            ldc "wp"
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.parseWallpaperComponent:(Ljava/io/File;Ljava/lang/String;)Landroid/content/ComponentName;
            astore 6 /* wpService */
        start local 6 // android.content.ComponentName wpService
        10: .line 228
            aload 0 /* this */
            aload 6 /* wpService */
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.servicePackageExists:(Landroid/content/ComponentName;)Z
            ifeq 36
        11: .line 232
            aload 0 /* this */
            getfield com.android.wallpaperbackup.WallpaperBackupAgent.mWm:Landroid/app/WallpaperManager;
            aload 6 /* wpService */
            iconst_0
            invokevirtual android.app.WallpaperManager.setWallpaperComponent:(Landroid/content/ComponentName;I)Z
            pop
        12: .line 233
            aload 4 /* lockImageStage */
            invokevirtual java.io.File.exists:()Z
            ifne 36
        13: .line 236
            aload 0 /* this */
            getfield com.android.wallpaperbackup.WallpaperBackupAgent.mWm:Landroid/app/WallpaperManager;
            iconst_2
            invokevirtual android.app.WallpaperManager.clear:(I)V
        end local 6 // android.content.ComponentName wpService
        14: .line 243
            goto 36
      StackMap locals: com.android.wallpaperbackup.WallpaperBackupAgent java.io.File java.io.File java.io.File java.io.File int
      StackMap stack: java.lang.Exception
        15: astore 6 /* e */
        start local 6 // java.lang.Exception e
        16: .line 244
            ldc "WallpaperBackup"
            new java.lang.StringBuilder
            dup
            ldc "Unable to restore wallpaper: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic android.util.Slog.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        end local 6 // java.lang.Exception e
        17: .line 249
            aload 2 /* infoStage */
            invokevirtual java.io.File.delete:()Z
            pop
        18: .line 250
            aload 3 /* imageStage */
            invokevirtual java.io.File.delete:()Z
            pop
        19: .line 251
            aload 4 /* lockImageStage */
            invokevirtual java.io.File.delete:()Z
            pop
        20: .line 253
            aload 0 /* this */
            ldc "wbprefs.xml"
            iconst_0
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.getSharedPreferences:(Ljava/lang/String;I)Landroid/content/SharedPreferences;
            astore 8 /* prefs */
        start local 8 // android.content.SharedPreferences prefs
        21: .line 254
            aload 8 /* prefs */
            invokeinterface android.content.SharedPreferences.edit:()Landroid/content/SharedPreferences$Editor;
        22: .line 255
            ldc "system_gen"
            iconst_m1
            invokeinterface android.content.SharedPreferences$Editor.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;
        23: .line 256
            ldc "lock_gen"
            iconst_m1
            invokeinterface android.content.SharedPreferences$Editor.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;
        24: .line 257
            invokeinterface android.content.SharedPreferences$Editor.commit:()Z
            pop
        end local 8 // android.content.SharedPreferences prefs
        25: goto 44
        26: .line 245
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 7
        27: .line 249
            aload 2 /* infoStage */
            invokevirtual java.io.File.delete:()Z
            pop
        28: .line 250
            aload 3 /* imageStage */
            invokevirtual java.io.File.delete:()Z
            pop
        29: .line 251
            aload 4 /* lockImageStage */
            invokevirtual java.io.File.delete:()Z
            pop
        30: .line 253
            aload 0 /* this */
            ldc "wbprefs.xml"
            iconst_0
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.getSharedPreferences:(Ljava/lang/String;I)Landroid/content/SharedPreferences;
            astore 8 /* prefs */
        start local 8 // android.content.SharedPreferences prefs
        31: .line 254
            aload 8 /* prefs */
            invokeinterface android.content.SharedPreferences.edit:()Landroid/content/SharedPreferences$Editor;
        32: .line 255
            ldc "system_gen"
            iconst_m1
            invokeinterface android.content.SharedPreferences$Editor.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;
        33: .line 256
            ldc "lock_gen"
            iconst_m1
            invokeinterface android.content.SharedPreferences$Editor.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;
        34: .line 257
            invokeinterface android.content.SharedPreferences$Editor.commit:()Z
            pop
        end local 8 // android.content.SharedPreferences prefs
        35: .line 258
            aload 7
            athrow
        36: .line 249
      StackMap locals:
      StackMap stack:
            aload 2 /* infoStage */
            invokevirtual java.io.File.delete:()Z
            pop
        37: .line 250
            aload 3 /* imageStage */
            invokevirtual java.io.File.delete:()Z
            pop
        38: .line 251
            aload 4 /* lockImageStage */
            invokevirtual java.io.File.delete:()Z
            pop
        39: .line 253
            aload 0 /* this */
            ldc "wbprefs.xml"
            iconst_0
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.getSharedPreferences:(Ljava/lang/String;I)Landroid/content/SharedPreferences;
            astore 8 /* prefs */
        start local 8 // android.content.SharedPreferences prefs
        40: .line 254
            aload 8 /* prefs */
            invokeinterface android.content.SharedPreferences.edit:()Landroid/content/SharedPreferences$Editor;
        41: .line 255
            ldc "system_gen"
            iconst_m1
            invokeinterface android.content.SharedPreferences$Editor.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;
        42: .line 256
            ldc "lock_gen"
            iconst_m1
            invokeinterface android.content.SharedPreferences$Editor.putInt:(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;
        43: .line 257
            invokeinterface android.content.SharedPreferences$Editor.commit:()Z
            pop
        end local 8 // android.content.SharedPreferences prefs
        44: .line 259
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int sysWhich
        end local 4 // java.io.File lockImageStage
        end local 3 // java.io.File imageStage
        end local 2 // java.io.File infoStage
        end local 1 // java.io.File filesDir
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   45     0            this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
            1   45     1        filesDir  Ljava/io/File;
            2   45     2       infoStage  Ljava/io/File;
            3   45     3      imageStage  Ljava/io/File;
            4   45     4  lockImageStage  Ljava/io/File;
            7   45     5        sysWhich  I
           10   14     6       wpService  Landroid/content/ComponentName;
           16   17     6               e  Ljava/lang/Exception;
           21   25     8           prefs  Landroid/content/SharedPreferences;
           31   35     8           prefs  Landroid/content/SharedPreferences;
           40   44     8           prefs  Landroid/content/SharedPreferences;
      Exception table:
        from    to  target  type
           7    14      15  Class java.lang.Exception
           7    17      26  any

  private void restoreFromStage(java.io.File, java.io.File, java.lang.String, int);
    descriptor: (Ljava/io/File;Ljava/io/File;Ljava/lang/String;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
        start local 1 // java.io.File stage
        start local 2 // java.io.File info
        start local 3 // java.lang.String hintTag
        start local 4 // int which
         0: .line 263
            aload 1 /* stage */
            invokevirtual java.io.File.exists:()Z
            ifeq 15
         1: .line 266
            aload 0 /* this */
            aload 2 /* info */
            aload 3 /* hintTag */
            invokevirtual com.android.wallpaperbackup.WallpaperBackupAgent.parseCropHint:(Ljava/io/File;Ljava/lang/String;)Landroid/graphics/Rect;
            astore 5 /* cropHint */
        start local 5 // android.graphics.Rect cropHint
         2: .line 267
            aload 5 /* cropHint */
            ifnull 15
         3: .line 268
            ldc "WallpaperBackup"
            new java.lang.StringBuilder
            dup
            ldc "Got restored wallpaper; applying which="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* which */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic android.util.Slog.i:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         4: .line 272
            aconst_null
            astore 6
            aconst_null
            astore 7
         5: new java.io.FileInputStream
            dup
            aload 1 /* stage */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 8 /* in */
        start local 8 // java.io.FileInputStream in
         6: .line 273
            aload 0 /* this */
            getfield com.android.wallpaperbackup.WallpaperBackupAgent.mWm:Landroid/app/WallpaperManager;
            aload 8 /* in */
            aload 5 /* cropHint */
            invokevirtual android.graphics.Rect.isEmpty:()Z
            ifeq 7
            aconst_null
            goto 8
      StackMap locals: com.android.wallpaperbackup.WallpaperBackupAgent java.io.File java.io.File java.lang.String int android.graphics.Rect java.lang.Throwable java.lang.Throwable java.io.FileInputStream
      StackMap stack: android.app.WallpaperManager java.io.FileInputStream
         7: aload 5 /* cropHint */
      StackMap locals: com.android.wallpaperbackup.WallpaperBackupAgent java.io.File java.io.File java.lang.String int android.graphics.Rect java.lang.Throwable java.lang.Throwable java.io.FileInputStream
      StackMap stack: android.app.WallpaperManager java.io.FileInputStream android.graphics.Rect
         8: iconst_1
            iload 4 /* which */
            invokevirtual android.app.WallpaperManager.setStream:(Ljava/io/InputStream;Landroid/graphics/Rect;ZI)I
            pop
         9: .line 274
            aload 8 /* in */
            ifnull 15
            aload 8 /* in */
            invokevirtual java.io.FileInputStream.close:()V
            goto 15
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 6
            aload 8 /* in */
            ifnull 11
            aload 8 /* in */
            invokevirtual java.io.FileInputStream.close:()V
        end local 8 // java.io.FileInputStream in
      StackMap locals:
      StackMap stack:
        11: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: astore 7
            aload 6
            ifnonnull 13
            aload 7
            astore 6
            goto 14
      StackMap locals:
      StackMap stack:
        13: aload 6
            aload 7
            if_acmpeq 14
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        14: aload 6
            athrow
        end local 5 // android.graphics.Rect cropHint
        15: .line 277
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int which
        end local 3 // java.lang.String hintTag
        end local 2 // java.io.File info
        end local 1 // java.io.File stage
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
            0   16     1     stage  Ljava/io/File;
            0   16     2      info  Ljava/io/File;
            0   16     3   hintTag  Ljava/lang/String;
            0   16     4     which  I
            2   15     5  cropHint  Landroid/graphics/Rect;
            6   11     8        in  Ljava/io/FileInputStream;
      Exception table:
        from    to  target  type
           6     9      10  any
           5    12      12  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      stage    
      info     
      hintTag  
      which    

  private android.graphics.Rect parseCropHint(java.io.File, java.lang.String);
    descriptor: (Ljava/io/File;Ljava/lang/String;)Landroid/graphics/Rect;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
         0: .line 282
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tXmlPullParser cannot be resolved to a type\n\tThe method newPullParser() from the type Xml refers to the missing type XmlPullParser\n\tXmlPullParser cannot be resolved to a variable\n\tXmlPullParser cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
    MethodParameters:
               Name  Flags
      wallpaperInfo  
      sectionTag     

  private android.content.ComponentName parseWallpaperComponent(java.io.File, java.lang.String);
    descriptor: (Ljava/io/File;Ljava/lang/String;)Landroid/content/ComponentName;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
         0: .line 310
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tXmlPullParser cannot be resolved to a type\n\tThe method newPullParser() from the type Xml refers to the missing type XmlPullParser\n\tXmlPullParser cannot be resolved to a variable\n\tXmlPullParser cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
    MethodParameters:
               Name  Flags
      wallpaperInfo  
      sectionTag     

  int getAttributeInt(XmlPullParser, java.lang.String, int);
    descriptor: (LXmlPullParser;Ljava/lang/String;I)I
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
         0: .line 335
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tXmlPullParser cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
    MethodParameters:
          Name  Flags
      parser    
      name      
      defValue  

  private boolean servicePackageExists(android.content.ComponentName);
    descriptor: (Landroid/content/ComponentName;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
        start local 1 // android.content.ComponentName comp
         0: .line 342
            aload 1 /* comp */
            ifnull 10
         1: .line 343
            invokestatic android.app.AppGlobals.getPackageManager:()Landroid/content/pm/IPackageManager;
            astore 2 /* pm */
        start local 2 // android.content.pm.IPackageManager pm
         2: .line 344
            aload 2 /* pm */
            aload 1 /* comp */
            invokevirtual android.content.ComponentName.getPackageName:()Ljava/lang/String;
         3: .line 345
            iconst_0
            iconst_0
         4: .line 344
            invokeinterface android.content.pm.IPackageManager.getPackageInfo:(Ljava/lang/String;II)Landroid/content/pm/PackageInfo;
            astore 3 /* info */
        start local 3 // android.content.pm.PackageInfo info
         5: .line 346
            aload 3 /* info */
            ifnull 6
            iconst_1
            ireturn
      StackMap locals: android.content.pm.IPackageManager android.content.pm.PackageInfo
      StackMap stack:
         6: iconst_0
         7: ireturn
        end local 3 // android.content.pm.PackageInfo info
        end local 2 // android.content.pm.IPackageManager pm
         8: .line 348
      StackMap locals: com.android.wallpaperbackup.WallpaperBackupAgent android.content.ComponentName
      StackMap stack: android.os.RemoteException
            pop
         9: .line 349
            ldc "WallpaperBackup"
            ldc "Unable to contact package manager"
            invokestatic android.util.Slog.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        10: .line 351
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // android.content.ComponentName comp
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
            0   11     1  comp  Landroid/content/ComponentName;
            2    8     2    pm  Landroid/content/pm/IPackageManager;
            5    8     3  info  Landroid/content/pm/PackageInfo;
      Exception table:
        from    to  target  type
           0     7       8  Class android.os.RemoteException
    MethodParameters:
      Name  Flags
      comp  

  public void onBackup(android.os.ParcelFileDescriptor, android.app.backup.BackupDataOutput, android.os.ParcelFileDescriptor);
    descriptor: (Landroid/os/ParcelFileDescriptor;Landroid/app/backup/BackupDataOutput;Landroid/os/ParcelFileDescriptor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=4, args_size=4
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
        start local 1 // android.os.ParcelFileDescriptor oldState
        start local 2 // android.app.backup.BackupDataOutput data
        start local 3 // android.os.ParcelFileDescriptor newState
         0: .line 362
            return
        end local 3 // android.os.ParcelFileDescriptor newState
        end local 2 // android.app.backup.BackupDataOutput data
        end local 1 // android.os.ParcelFileDescriptor oldState
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
            0    1     1  oldState  Landroid/os/ParcelFileDescriptor;
            0    1     2      data  Landroid/app/backup/BackupDataOutput;
            0    1     3  newState  Landroid/os/ParcelFileDescriptor;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      oldState  
      data      
      newState  

  public void onRestore(android.app.backup.BackupDataInput, int, android.os.ParcelFileDescriptor);
    descriptor: (Landroid/app/backup/BackupDataInput;ILandroid/os/ParcelFileDescriptor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=4, args_size=4
        start local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
        start local 1 // android.app.backup.BackupDataInput data
        start local 2 // int appVersionCode
        start local 3 // android.os.ParcelFileDescriptor newState
         0: .line 368
            return
        end local 3 // android.os.ParcelFileDescriptor newState
        end local 2 // int appVersionCode
        end local 1 // android.app.backup.BackupDataInput data
        end local 0 // com.android.wallpaperbackup.WallpaperBackupAgent this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lcom/android/wallpaperbackup/WallpaperBackupAgent;
            0    1     1            data  Landroid/app/backup/BackupDataInput;
            0    1     2  appVersionCode  I
            0    1     3        newState  Landroid/os/ParcelFileDescriptor;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                Name  Flags
      data            
      appVersionCode  
      newState        
}
SourceFile: "WallpaperBackupAgent.java"
InnerClasses:
  public abstract Editor = android.content.SharedPreferences$Editor of android.content.SharedPreferences