public class android.database.sqlite.SQLiteCursor extends android.database.AbstractWindowedCursor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.database.sqlite.SQLiteCursor
  super_class: android.database.AbstractWindowedCursor
{
  static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "SQLiteCursor"

  static final int NO_COUNT;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  private final java.lang.String mEditTable;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String[] mColumns;
    descriptor: [Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final android.database.sqlite.SQLiteQuery mQuery;
    descriptor: Landroid/database/sqlite/SQLiteQuery;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final android.database.sqlite.SQLiteCursorDriver mDriver;
    descriptor: Landroid/database/sqlite/SQLiteCursorDriver;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

  private java.util.Map<java.lang.String, java.lang.Integer> mColumnNameMap;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Integer;>;

  private final java.lang.Throwable mStackTrace;
    descriptor: Ljava/lang/Throwable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  public void <init>(android.database.sqlite.SQLiteDatabase, android.database.sqlite.SQLiteCursorDriver, java.lang.String, android.database.sqlite.SQLiteQuery);
    descriptor: (Landroid/database/sqlite/SQLiteDatabase;Landroid/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Landroid/database/sqlite/SQLiteQuery;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // android.database.sqlite.SQLiteCursor this
        start local 1 // android.database.sqlite.SQLiteDatabase db
        start local 2 // android.database.sqlite.SQLiteCursorDriver driver
        start local 3 // java.lang.String editTable
        start local 4 // android.database.sqlite.SQLiteQuery query
         0: .line 85
            aload 0 /* this */
            aload 2 /* driver */
            aload 3 /* editTable */
            aload 4 /* query */
            invokespecial android.database.sqlite.SQLiteCursor.<init>:(Landroid/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Landroid/database/sqlite/SQLiteQuery;)V
         1: .line 86
            return
        end local 4 // android.database.sqlite.SQLiteQuery query
        end local 3 // java.lang.String editTable
        end local 2 // android.database.sqlite.SQLiteCursorDriver driver
        end local 1 // android.database.sqlite.SQLiteDatabase db
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Landroid/database/sqlite/SQLiteCursor;
            0    2     1         db  Landroid/database/sqlite/SQLiteDatabase;
            0    2     2     driver  Landroid/database/sqlite/SQLiteCursorDriver;
            0    2     3  editTable  Ljava/lang/String;
            0    2     4      query  Landroid/database/sqlite/SQLiteQuery;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
           Name  Flags
      db         
      driver     
      editTable  
      query      

  public void <init>(android.database.sqlite.SQLiteCursorDriver, java.lang.String, android.database.sqlite.SQLiteQuery);
    descriptor: (Landroid/database/sqlite/SQLiteCursorDriver;Ljava/lang/String;Landroid/database/sqlite/SQLiteQuery;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // android.database.sqlite.SQLiteCursor this
        start local 1 // android.database.sqlite.SQLiteCursorDriver driver
        start local 2 // java.lang.String editTable
        start local 3 // android.database.sqlite.SQLiteQuery query
         0: .line 98
            aload 0 /* this */
            invokespecial android.database.AbstractWindowedCursor.<init>:()V
         1: .line 54
            aload 0 /* this */
            iconst_m1
            putfield android.database.sqlite.SQLiteCursor.mCount:I
         2: .line 99
            aload 3 /* query */
            ifnonnull 4
         3: .line 100
            new java.lang.IllegalArgumentException
            dup
            ldc "query object cannot be null"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 102
      StackMap locals: android.database.sqlite.SQLiteCursor android.database.sqlite.SQLiteCursorDriver java.lang.String android.database.sqlite.SQLiteQuery
      StackMap stack:
            invokestatic android.os.StrictMode.vmSqliteObjectLeaksEnabled:()Z
            ifeq 7
         5: .line 103
            aload 0 /* this */
            new android.database.sqlite.DatabaseObjectNotClosedException
            dup
            invokespecial android.database.sqlite.DatabaseObjectNotClosedException.<init>:()V
            invokevirtual android.database.sqlite.DatabaseObjectNotClosedException.fillInStackTrace:()Ljava/lang/Throwable;
            putfield android.database.sqlite.SQLiteCursor.mStackTrace:Ljava/lang/Throwable;
         6: .line 104
            goto 8
         7: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield android.database.sqlite.SQLiteCursor.mStackTrace:Ljava/lang/Throwable;
         8: .line 107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* driver */
            putfield android.database.sqlite.SQLiteCursor.mDriver:Landroid/database/sqlite/SQLiteCursorDriver;
         9: .line 108
            aload 0 /* this */
            aload 2 /* editTable */
            putfield android.database.sqlite.SQLiteCursor.mEditTable:Ljava/lang/String;
        10: .line 109
            aload 0 /* this */
            aconst_null
            putfield android.database.sqlite.SQLiteCursor.mColumnNameMap:Ljava/util/Map;
        11: .line 110
            aload 0 /* this */
            aload 3 /* query */
            putfield android.database.sqlite.SQLiteCursor.mQuery:Landroid/database/sqlite/SQLiteQuery;
        12: .line 112
            aload 0 /* this */
            aload 3 /* query */
            invokevirtual android.database.sqlite.SQLiteQuery.getColumnNames:()[Ljava/lang/String;
            putfield android.database.sqlite.SQLiteCursor.mColumns:[Ljava/lang/String;
        13: .line 113
            return
        end local 3 // android.database.sqlite.SQLiteQuery query
        end local 2 // java.lang.String editTable
        end local 1 // android.database.sqlite.SQLiteCursorDriver driver
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0       this  Landroid/database/sqlite/SQLiteCursor;
            0   14     1     driver  Landroid/database/sqlite/SQLiteCursorDriver;
            0   14     2  editTable  Ljava/lang/String;
            0   14     3      query  Landroid/database/sqlite/SQLiteQuery;
    MethodParameters:
           Name  Flags
      driver     
      editTable  
      query      

  public android.database.sqlite.SQLiteDatabase getDatabase();
    descriptor: ()Landroid/database/sqlite/SQLiteDatabase;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.database.sqlite.SQLiteCursor this
         0: .line 120
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mQuery:Landroid/database/sqlite/SQLiteQuery;
            invokevirtual android.database.sqlite.SQLiteQuery.getDatabase:()Landroid/database/sqlite/SQLiteDatabase;
            areturn
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/database/sqlite/SQLiteCursor;

  public boolean onMove(int, int);
    descriptor: (II)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.database.sqlite.SQLiteCursor this
        start local 1 // int oldPosition
        start local 2 // int newPosition
         0: .line 126
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            ifnull 2
            iload 2 /* newPosition */
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            invokevirtual android.database.CursorWindow.getStartPosition:()I
            if_icmplt 2
         1: .line 127
            iload 2 /* newPosition */
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            invokevirtual android.database.CursorWindow.getStartPosition:()I
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            invokevirtual android.database.CursorWindow.getNumRows:()I
            iadd
            if_icmplt 3
         2: .line 128
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* newPosition */
            invokevirtual android.database.sqlite.SQLiteCursor.fillWindow:(I)V
         3: .line 131
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 2 // int newPosition
        end local 1 // int oldPosition
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Landroid/database/sqlite/SQLiteCursor;
            0    4     1  oldPosition  I
            0    4     2  newPosition  I
    MethodParameters:
             Name  Flags
      oldPosition  
      newPosition  

  public int getCount();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.database.sqlite.SQLiteCursor this
         0: .line 136
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mCount:I
            iconst_m1
            if_icmpne 2
         1: .line 137
            aload 0 /* this */
            iconst_0
            invokevirtual android.database.sqlite.SQLiteCursor.fillWindow:(I)V
         2: .line 139
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mCount:I
            ireturn
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/database/sqlite/SQLiteCursor;

  private void fillWindow(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // android.database.sqlite.SQLiteCursor this
        start local 1 // int requiredPos
         0: .line 143
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual android.database.sqlite.SQLiteCursor.getDatabase:()Landroid/database/sqlite/SQLiteDatabase;
            invokevirtual android.database.sqlite.SQLiteDatabase.getPath:()Ljava/lang/String;
            invokevirtual android.database.sqlite.SQLiteCursor.clearOrCreateWindow:(Ljava/lang/String;)V
         1: .line 145
            iload 1 /* requiredPos */
         2: .line 146
            new java.lang.StringBuilder
            dup
            ldc "requiredPos cannot be negative, but was "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* requiredPos */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 145
            invokestatic com.android.internal.util.Preconditions.checkArgumentNonnegative:(ILjava/lang/String;)I
            pop
         4: .line 148
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mCount:I
            iconst_m1
            if_icmpne 10
         5: .line 149
            aload 0 /* this */
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mQuery:Landroid/database/sqlite/SQLiteQuery;
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            iload 1 /* requiredPos */
            iload 1 /* requiredPos */
            iconst_1
            invokevirtual android.database.sqlite.SQLiteQuery.fillWindow:(Landroid/database/CursorWindow;IIZ)I
            putfield android.database.sqlite.SQLiteCursor.mCount:I
         6: .line 150
            aload 0 /* this */
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            invokevirtual android.database.CursorWindow.getNumRows:()I
            putfield android.database.sqlite.SQLiteCursor.mCursorWindowCapacity:I
         7: .line 151
            ldc "SQLiteCursor"
            iconst_3
            invokestatic android.util.Log.isLoggable:(Ljava/lang/String;I)Z
            ifeq 18
         8: .line 152
            ldc "SQLiteCursor"
            new java.lang.StringBuilder
            dup
            ldc "received count(*) from native_fill_window: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mCount:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic android.util.Log.d:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         9: .line 154
            goto 18
        10: .line 155
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mFillWindowForwardOnly:Z
            ifeq 11
            iload 1 /* requiredPos */
            goto 12
        11: .line 156
      StackMap locals:
      StackMap stack:
            iload 1 /* requiredPos */
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mCursorWindowCapacity:I
            invokestatic android.database.DatabaseUtils.cursorPickFillWindowStartPosition:(II)I
        12: .line 155
      StackMap locals:
      StackMap stack: int
            istore 2 /* startPos */
        start local 2 // int startPos
        13: .line 157
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mQuery:Landroid/database/sqlite/SQLiteQuery;
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            iload 2 /* startPos */
            iload 1 /* requiredPos */
            iconst_0
            invokevirtual android.database.sqlite.SQLiteQuery.fillWindow:(Landroid/database/CursorWindow;IIZ)I
            pop
        end local 2 // int startPos
        14: .line 159
            goto 18
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
        15: astore 2 /* ex */
        start local 2 // java.lang.RuntimeException ex
        16: .line 164
            aload 0 /* this */
            invokevirtual android.database.sqlite.SQLiteCursor.closeWindow:()V
        17: .line 165
            aload 2 /* ex */
            athrow
        end local 2 // java.lang.RuntimeException ex
        18: .line 167
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int requiredPos
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Landroid/database/sqlite/SQLiteCursor;
            0   19     1  requiredPos  I
           13   14     2     startPos  I
           16   18     2           ex  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
           1    14      15  Class java.lang.RuntimeException
    MethodParameters:
             Name  Flags
      requiredPos  

  public int getColumnIndex(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // android.database.sqlite.SQLiteCursor this
        start local 1 // java.lang.String columnName
         0: .line 172
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mColumnNameMap:Ljava/util/Map;
            ifnonnull 10
         1: .line 173
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mColumns:[Ljava/lang/String;
            astore 2 /* columns */
        start local 2 // java.lang.String[] columns
         2: .line 174
            aload 2 /* columns */
            arraylength
            istore 3 /* columnCount */
        start local 3 // int columnCount
         3: .line 175
            new java.util.HashMap
            dup
            iload 3 /* columnCount */
            fconst_1
            invokespecial java.util.HashMap.<init>:(IF)V
            astore 4 /* map */
        start local 4 // java.util.HashMap map
         4: .line 176
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 8
         6: .line 177
      StackMap locals: android.database.sqlite.SQLiteCursor java.lang.String java.lang.String[] int java.util.HashMap int
      StackMap stack:
            aload 4 /* map */
            aload 2 /* columns */
            iload 5 /* i */
            aaload
            iload 5 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 176
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 5 /* i */
            iload 3 /* columnCount */
            if_icmplt 6
        end local 5 // int i
         9: .line 179
            aload 0 /* this */
            aload 4 /* map */
            putfield android.database.sqlite.SQLiteCursor.mColumnNameMap:Ljava/util/Map;
        end local 4 // java.util.HashMap map
        end local 3 // int columnCount
        end local 2 // java.lang.String[] columns
        10: .line 183
      StackMap locals: android.database.sqlite.SQLiteCursor java.lang.String
      StackMap stack:
            aload 1 /* columnName */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 2 /* periodIndex */
        start local 2 // int periodIndex
        11: .line 184
            iload 2 /* periodIndex */
            iconst_m1
            if_icmpeq 15
        12: .line 185
            new java.lang.Exception
            dup
            invokespecial java.lang.Exception.<init>:()V
            astore 3 /* e */
        start local 3 // java.lang.Exception e
        13: .line 186
            ldc "SQLiteCursor"
            new java.lang.StringBuilder
            dup
            ldc "requesting column name with table name -- "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* columnName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 3 /* e */
            invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
            pop
        14: .line 187
            aload 1 /* columnName */
            iload 2 /* periodIndex */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 1 /* columnName */
        end local 3 // java.lang.Exception e
        15: .line 190
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mColumnNameMap:Ljava/util/Map;
            aload 1 /* columnName */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 3 /* i */
        start local 3 // java.lang.Integer i
        16: .line 191
            aload 3 /* i */
            ifnull 18
        17: .line 192
            aload 3 /* i */
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        18: .line 194
      StackMap locals: java.lang.Integer
      StackMap stack:
            iconst_m1
            ireturn
        end local 3 // java.lang.Integer i
        end local 2 // int periodIndex
        end local 1 // java.lang.String columnName
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   19     0         this  Landroid/database/sqlite/SQLiteCursor;
            0   19     1   columnName  Ljava/lang/String;
            2   10     2      columns  [Ljava/lang/String;
            3   10     3  columnCount  I
            4   10     4          map  Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Integer;>;
            5    9     5            i  I
           11   19     2  periodIndex  I
           13   15     3            e  Ljava/lang/Exception;
           16   19     3            i  Ljava/lang/Integer;
    MethodParameters:
            Name  Flags
      columnName  

  public java.lang.String[] getColumnNames();
    descriptor: ()[Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.database.sqlite.SQLiteCursor this
         0: .line 200
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mColumns:[Ljava/lang/String;
            areturn
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/database/sqlite/SQLiteCursor;

  public void deactivate();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.database.sqlite.SQLiteCursor this
         0: .line 205
            aload 0 /* this */
            invokespecial android.database.AbstractWindowedCursor.deactivate:()V
         1: .line 206
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mDriver:Landroid/database/sqlite/SQLiteCursorDriver;
            invokeinterface android.database.sqlite.SQLiteCursorDriver.cursorDeactivated:()V
         2: .line 207
            return
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/database/sqlite/SQLiteCursor;

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // android.database.sqlite.SQLiteCursor this
         0: .line 211
            aload 0 /* this */
            invokespecial android.database.AbstractWindowedCursor.close:()V
         1: .line 212
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         2: .line 213
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mQuery:Landroid/database/sqlite/SQLiteQuery;
            invokevirtual android.database.sqlite.SQLiteQuery.close:()V
         3: .line 214
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mDriver:Landroid/database/sqlite/SQLiteCursorDriver;
            invokeinterface android.database.sqlite.SQLiteCursorDriver.cursorClosed:()V
         4: .line 212
            aload 1
            monitorexit
         5: goto 8
      StackMap locals: android.database.sqlite.SQLiteCursor android.database.sqlite.SQLiteCursor
      StackMap stack: java.lang.Throwable
         6: aload 1
            monitorexit
         7: athrow
         8: .line 216
      StackMap locals:
      StackMap stack:
            return
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Landroid/database/sqlite/SQLiteCursor;
      Exception table:
        from    to  target  type
           2     5       6  any
           6     7       6  any

  public boolean requery();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // android.database.sqlite.SQLiteCursor this
         0: .line 220
            aload 0 /* this */
            invokevirtual android.database.sqlite.SQLiteCursor.isClosed:()Z
            ifeq 2
         1: .line 221
            iconst_0
            ireturn
         2: .line 224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            astore 1
            monitorenter
         3: .line 225
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mQuery:Landroid/database/sqlite/SQLiteQuery;
            invokevirtual android.database.sqlite.SQLiteQuery.getDatabase:()Landroid/database/sqlite/SQLiteDatabase;
            invokevirtual android.database.sqlite.SQLiteDatabase.isOpen:()Z
            ifne 6
         4: .line 226
            aload 1
            monitorexit
         5: iconst_0
            ireturn
         6: .line 229
      StackMap locals: android.database.sqlite.SQLiteCursor
      StackMap stack:
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            ifnull 8
         7: .line 230
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            invokevirtual android.database.CursorWindow.clear:()V
         8: .line 232
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_m1
            putfield android.database.sqlite.SQLiteCursor.mPos:I
         9: .line 233
            aload 0 /* this */
            iconst_m1
            putfield android.database.sqlite.SQLiteCursor.mCount:I
        10: .line 235
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mDriver:Landroid/database/sqlite/SQLiteCursorDriver;
            aload 0 /* this */
            invokeinterface android.database.sqlite.SQLiteCursorDriver.cursorRequeried:(Landroid/database/Cursor;)V
        11: .line 224
            aload 1
            monitorexit
        12: goto 15
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: aload 1
            monitorexit
        14: athrow
        15: .line 239
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokespecial android.database.AbstractWindowedCursor.requery:()Z
        16: ireturn
        17: .line 240
      StackMap locals:
      StackMap stack: java.lang.IllegalStateException
            astore 1 /* e */
        start local 1 // java.lang.IllegalStateException e
        18: .line 242
            ldc "SQLiteCursor"
            new java.lang.StringBuilder
            dup
            ldc "requery() failed "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* e */
            invokevirtual java.lang.IllegalStateException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* e */
            invokestatic android.util.Log.w:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
            pop
        19: .line 243
            iconst_0
            ireturn
        end local 1 // java.lang.IllegalStateException e
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Landroid/database/sqlite/SQLiteCursor;
           18   20     1     e  Ljava/lang/IllegalStateException;
      Exception table:
        from    to  target  type
           3     5      13  any
           6    12      13  any
          13    14      13  any
          15    16      17  Class java.lang.IllegalStateException

  public void setWindow(android.database.CursorWindow);
    descriptor: (Landroid/database/CursorWindow;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.database.sqlite.SQLiteCursor this
        start local 1 // android.database.CursorWindow window
         0: .line 249
            aload 0 /* this */
            aload 1 /* window */
            invokespecial android.database.AbstractWindowedCursor.setWindow:(Landroid/database/CursorWindow;)V
         1: .line 250
            aload 0 /* this */
            iconst_m1
            putfield android.database.sqlite.SQLiteCursor.mCount:I
         2: .line 251
            return
        end local 1 // android.database.CursorWindow window
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Landroid/database/sqlite/SQLiteCursor;
            0    3     1  window  Landroid/database/CursorWindow;
    MethodParameters:
        Name  Flags
      window  

  public void setSelectionArguments(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.database.sqlite.SQLiteCursor this
        start local 1 // java.lang.String[] selectionArgs
         0: .line 257
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mDriver:Landroid/database/sqlite/SQLiteCursorDriver;
            aload 1 /* selectionArgs */
            invokeinterface android.database.sqlite.SQLiteCursorDriver.setBindArguments:([Ljava/lang/String;)V
         1: .line 258
            return
        end local 1 // java.lang.String[] selectionArgs
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Landroid/database/sqlite/SQLiteCursor;
            0    2     1  selectionArgs  [Ljava/lang/String;
    MethodParameters:
               Name  Flags
      selectionArgs  

  public void setFillWindowForwardOnly(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.database.sqlite.SQLiteCursor this
        start local 1 // boolean fillWindowForwardOnly
         0: .line 271
            aload 0 /* this */
            iload 1 /* fillWindowForwardOnly */
            putfield android.database.sqlite.SQLiteCursor.mFillWindowForwardOnly:Z
         1: .line 272
            return
        end local 1 // boolean fillWindowForwardOnly
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    2     0                   this  Landroid/database/sqlite/SQLiteCursor;
            0    2     1  fillWindowForwardOnly  Z
    MethodParameters:
                       Name  Flags
      fillWindowForwardOnly  

  protected void finalize();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // android.database.sqlite.SQLiteCursor this
         0: .line 281
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mWindow:Landroid/database/CursorWindow;
            ifnull 18
         1: .line 282
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mStackTrace:Ljava/lang/Throwable;
            ifnull 13
         2: .line 283
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mQuery:Landroid/database/sqlite/SQLiteQuery;
            invokevirtual android.database.sqlite.SQLiteQuery.getSql:()Ljava/lang/String;
            astore 1 /* sql */
        start local 1 // java.lang.String sql
         3: .line 284
            aload 1 /* sql */
            invokevirtual java.lang.String.length:()I
            istore 2 /* len */
        start local 2 // int len
         4: .line 286
            new java.lang.StringBuilder
            dup
            ldc "Finalizing a Cursor that has not been deactivated or closed. database = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 287
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mQuery:Landroid/database/sqlite/SQLiteQuery;
            invokevirtual android.database.sqlite.SQLiteQuery.getDatabase:()Landroid/database/sqlite/SQLiteDatabase;
            invokevirtual android.database.sqlite.SQLiteDatabase.getLabel:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 288
            ldc ", table = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mEditTable:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 289
            ldc ", query = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* sql */
            iconst_0
            iload 2 /* len */
            sipush 1000
            if_icmple 8
            sipush 1000
            goto 9
      StackMap locals: android.database.sqlite.SQLiteCursor java.lang.String int
      StackMap stack: java.lang.StringBuilder java.lang.String int
         8: iload 2 /* len */
      StackMap locals: android.database.sqlite.SQLiteCursor java.lang.String int
      StackMap stack: java.lang.StringBuilder java.lang.String int int
         9: invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        10: .line 286
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 290
            aload 0 /* this */
            getfield android.database.sqlite.SQLiteCursor.mStackTrace:Ljava/lang/Throwable;
        12: .line 285
            invokestatic android.os.StrictMode.onSqliteObjectLeaked:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 2 // int len
        end local 1 // java.lang.String sql
        13: .line 292
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.database.sqlite.SQLiteCursor.close:()V
        14: .line 294
            goto 18
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 3
        16: .line 295
            aload 0 /* this */
            invokespecial android.database.AbstractWindowedCursor.finalize:()V
        17: .line 296
            aload 3
            athrow
        18: .line 295
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokespecial android.database.AbstractWindowedCursor.finalize:()V
        19: .line 297
            return
        end local 0 // android.database.sqlite.SQLiteCursor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Landroid/database/sqlite/SQLiteCursor;
            3   13     1   sql  Ljava/lang/String;
            4   13     2   len  I
      Exception table:
        from    to  target  type
           0    15      15  any
}
SourceFile: "SQLiteCursor.java"