public class android.content.SearchRecentSuggestionsProvider extends android.content.ContentProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.content.SearchRecentSuggestionsProvider
  super_class: android.content.ContentProvider
{
  private static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SuggestionsProvider"

  private java.lang.String mAuthority;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

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

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

  private android.database.sqlite.SQLiteOpenHelper mOpenHelper;
    descriptor: Landroid/database/sqlite/SQLiteOpenHelper;
    flags: (0x0002) ACC_PRIVATE

  private static final java.lang.String sDatabaseName;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "suggestions.db"

  private static final java.lang.String sSuggestions;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "suggestions"

  private static final java.lang.String ORDER_BY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "date DESC"

  private static final java.lang.String NULL_COLUMN;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "query"

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

  public static final int DATABASE_MODE_QUERIES;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int DATABASE_MODE_2LINES;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

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

  private android.net.Uri mSuggestionsUri;
    descriptor: Landroid/net/Uri;
    flags: (0x0002) ACC_PRIVATE

  private android.content.UriMatcher mUriMatcher;
    descriptor: Landroid/content/UriMatcher;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String mSuggestSuggestionClause;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String[] mSuggestionProjection;
    descriptor: [Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.content.SearchRecentSuggestionsProvider this
         0: .line 73
            aload 0 /* this */
            invokespecial android.content.ContentProvider.<init>:()V
            return
        end local 0 // android.content.SearchRecentSuggestionsProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/content/SearchRecentSuggestionsProvider;

  protected void setupSuggestions(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.content.SearchRecentSuggestionsProvider this
         0: .line 196
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tcom.android.internal.R cannot be resolved to a variable\n\tcom.android.internal.R cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.content.SearchRecentSuggestionsProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/content/SearchRecentSuggestionsProvider;
    MethodParameters:
           Name  Flags
      authority  
      mode       

  public int delete(android.net.Uri, java.lang.String, java.lang.String[]);
    descriptor: (Landroid/net/Uri;Ljava/lang/String;[Ljava/lang/String;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // android.content.SearchRecentSuggestionsProvider this
        start local 1 // android.net.Uri uri
        start local 2 // java.lang.String selection
        start local 3 // java.lang.String[] selectionArgs
         0: .line 226
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mOpenHelper:Landroid/database/sqlite/SQLiteOpenHelper;
            invokevirtual android.database.sqlite.SQLiteOpenHelper.getWritableDatabase:()Landroid/database/sqlite/SQLiteDatabase;
            astore 4 /* db */
        start local 4 // android.database.sqlite.SQLiteDatabase db
         1: .line 228
            aload 1 /* uri */
            invokevirtual android.net.Uri.getPathSegments:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 5 /* length */
        start local 5 // int length
         2: .line 229
            iload 5 /* length */
            iconst_1
            if_icmpeq 4
         3: .line 230
            new java.lang.IllegalArgumentException
            dup
            ldc "Unknown Uri"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 233
      StackMap locals: android.database.sqlite.SQLiteDatabase int
      StackMap stack:
            aload 1 /* uri */
            invokevirtual android.net.Uri.getPathSegments:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* base */
        start local 6 // java.lang.String base
         5: .line 234
            iconst_0
            istore 7 /* count */
        start local 7 // int count
         6: .line 235
            aload 6 /* base */
            ldc "suggestions"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         7: .line 236
            aload 4 /* db */
            ldc "suggestions"
            aload 2 /* selection */
            aload 3 /* selectionArgs */
            invokevirtual android.database.sqlite.SQLiteDatabase.delete:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
            istore 7 /* count */
         8: .line 237
            goto 10
         9: .line 238
      StackMap locals: java.lang.String int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Unknown Uri"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 240
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.content.SearchRecentSuggestionsProvider.getContext:()Landroid/content/Context;
            invokevirtual android.content.Context.getContentResolver:()Landroid/content/ContentResolver;
            aload 1 /* uri */
            aconst_null
            invokevirtual android.content.ContentResolver.notifyChange:(Landroid/net/Uri;Landroid/database/ContentObserver;)V
        11: .line 241
            iload 7 /* count */
            ireturn
        end local 7 // int count
        end local 6 // java.lang.String base
        end local 5 // int length
        end local 4 // android.database.sqlite.SQLiteDatabase db
        end local 3 // java.lang.String[] selectionArgs
        end local 2 // java.lang.String selection
        end local 1 // android.net.Uri uri
        end local 0 // android.content.SearchRecentSuggestionsProvider this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     0           this  Landroid/content/SearchRecentSuggestionsProvider;
            0   12     1            uri  Landroid/net/Uri;
            0   12     2      selection  Ljava/lang/String;
            0   12     3  selectionArgs  [Ljava/lang/String;
            1   12     4             db  Landroid/database/sqlite/SQLiteDatabase;
            2   12     5         length  I
            5   12     6           base  Ljava/lang/String;
            6   12     7          count  I
    MethodParameters:
               Name  Flags
      uri            
      selection      
      selectionArgs  

  public java.lang.String getType(android.net.Uri);
    descriptor: (Landroid/net/Uri;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // android.content.SearchRecentSuggestionsProvider this
        start local 1 // android.net.Uri uri
         0: .line 250
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mUriMatcher:Landroid/content/UriMatcher;
            aload 1 /* uri */
            invokevirtual android.content.UriMatcher.match:(Landroid/net/Uri;)I
            iconst_1
            if_icmpne 2
         1: .line 251
            ldc "vnd.android.cursor.dir/vnd.android.search.suggest"
            areturn
         2: .line 253
      StackMap locals:
      StackMap stack:
            aload 1 /* uri */
            invokevirtual android.net.Uri.getPathSegments:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 2 /* length */
        start local 2 // int length
         3: .line 254
            iload 2 /* length */
            iconst_1
            if_icmplt 10
         4: .line 255
            aload 1 /* uri */
            invokevirtual android.net.Uri.getPathSegments:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 3 /* base */
        start local 3 // java.lang.String base
         5: .line 256
            aload 3 /* base */
            ldc "suggestions"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         6: .line 257
            iload 2 /* length */
            iconst_1
            if_icmpne 8
         7: .line 258
            ldc "vnd.android.cursor.dir/suggestion"
            areturn
         8: .line 259
      StackMap locals: int java.lang.String
      StackMap stack:
            iload 2 /* length */
            iconst_2
            if_icmpne 10
         9: .line 260
            ldc "vnd.android.cursor.item/suggestion"
            areturn
        end local 3 // java.lang.String base
        10: .line 264
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Unknown Uri"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // int length
        end local 1 // android.net.Uri uri
        end local 0 // android.content.SearchRecentSuggestionsProvider this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Landroid/content/SearchRecentSuggestionsProvider;
            0   11     1     uri  Landroid/net/Uri;
            3   11     2  length  I
            5   10     3    base  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      uri   

  public android.net.Uri insert(android.net.Uri, android.content.ContentValues);
    descriptor: (Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // android.content.SearchRecentSuggestionsProvider this
        start local 1 // android.net.Uri uri
        start local 2 // android.content.ContentValues values
         0: .line 273
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mOpenHelper:Landroid/database/sqlite/SQLiteOpenHelper;
            invokevirtual android.database.sqlite.SQLiteOpenHelper.getWritableDatabase:()Landroid/database/sqlite/SQLiteDatabase;
            astore 3 /* db */
        start local 3 // android.database.sqlite.SQLiteDatabase db
         1: .line 275
            aload 1 /* uri */
            invokevirtual android.net.Uri.getPathSegments:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 4 /* length */
        start local 4 // int length
         2: .line 276
            iload 4 /* length */
            iconst_1
            if_icmpge 4
         3: .line 277
            new java.lang.IllegalArgumentException
            dup
            ldc "Unknown Uri"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 280
      StackMap locals: android.database.sqlite.SQLiteDatabase int
      StackMap stack:
            ldc -1
            lstore 5 /* rowID */
        start local 5 // long rowID
         5: .line 281
            aload 1 /* uri */
            invokevirtual android.net.Uri.getPathSegments:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* base */
        start local 7 // java.lang.String base
         6: .line 282
            aconst_null
            astore 8 /* newUri */
        start local 8 // android.net.Uri newUri
         7: .line 283
            aload 7 /* base */
            ldc "suggestions"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 12
         8: .line 284
            iload 4 /* length */
            iconst_1
            if_icmpne 12
         9: .line 285
            aload 3 /* db */
            ldc "suggestions"
            ldc "query"
            aload 2 /* values */
            invokevirtual android.database.sqlite.SQLiteDatabase.insert:(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
            lstore 5 /* rowID */
        10: .line 286
            lload 5 /* rowID */
            lconst_0
            lcmp
            ifle 12
        11: .line 287
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mSuggestionsUri:Landroid/net/Uri;
            lload 5 /* rowID */
            invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
            invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
            astore 8 /* newUri */
        12: .line 291
      StackMap locals: long java.lang.String android.net.Uri
      StackMap stack:
            lload 5 /* rowID */
            lconst_0
            lcmp
            ifge 14
        13: .line 292
            new java.lang.IllegalArgumentException
            dup
            ldc "Unknown Uri"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        14: .line 294
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.content.SearchRecentSuggestionsProvider.getContext:()Landroid/content/Context;
            invokevirtual android.content.Context.getContentResolver:()Landroid/content/ContentResolver;
            aload 8 /* newUri */
            aconst_null
            invokevirtual android.content.ContentResolver.notifyChange:(Landroid/net/Uri;Landroid/database/ContentObserver;)V
        15: .line 295
            aload 8 /* newUri */
            areturn
        end local 8 // android.net.Uri newUri
        end local 7 // java.lang.String base
        end local 5 // long rowID
        end local 4 // int length
        end local 3 // android.database.sqlite.SQLiteDatabase db
        end local 2 // android.content.ContentValues values
        end local 1 // android.net.Uri uri
        end local 0 // android.content.SearchRecentSuggestionsProvider this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Landroid/content/SearchRecentSuggestionsProvider;
            0   16     1     uri  Landroid/net/Uri;
            0   16     2  values  Landroid/content/ContentValues;
            1   16     3      db  Landroid/database/sqlite/SQLiteDatabase;
            2   16     4  length  I
            5   16     5   rowID  J
            6   16     7    base  Ljava/lang/String;
            7   16     8  newUri  Landroid/net/Uri;
    MethodParameters:
        Name  Flags
      uri     
      values  

  public boolean onCreate();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // android.content.SearchRecentSuggestionsProvider this
         0: .line 304
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mAuthority:Ljava/lang/String;
            ifnull 1
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mMode:I
            ifne 2
         1: .line 305
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "Provider not configured"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 307
      StackMap locals:
      StackMap stack:
            sipush 512
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mMode:I
            iadd
            istore 1 /* mWorkingDbVersion */
        start local 1 // int mWorkingDbVersion
         3: .line 308
            aload 0 /* this */
            new android.content.SearchRecentSuggestionsProvider$DatabaseHelper
            dup
            aload 0 /* this */
            invokevirtual android.content.SearchRecentSuggestionsProvider.getContext:()Landroid/content/Context;
            iload 1 /* mWorkingDbVersion */
            invokespecial android.content.SearchRecentSuggestionsProvider$DatabaseHelper.<init>:(Landroid/content/Context;I)V
            putfield android.content.SearchRecentSuggestionsProvider.mOpenHelper:Landroid/database/sqlite/SQLiteOpenHelper;
         4: .line 310
            iconst_1
            ireturn
        end local 1 // int mWorkingDbVersion
        end local 0 // android.content.SearchRecentSuggestionsProvider this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Landroid/content/SearchRecentSuggestionsProvider;
            3    5     1  mWorkingDbVersion  I

  public android.database.Cursor query(android.net.Uri, java.lang.String[], java.lang.String, java.lang.String[], java.lang.String);
    descriptor: (Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=12, args_size=6
        start local 0 // android.content.SearchRecentSuggestionsProvider this
        start local 1 // android.net.Uri uri
        start local 2 // java.lang.String[] projection
        start local 3 // java.lang.String selection
        start local 4 // java.lang.String[] selectionArgs
        start local 5 // java.lang.String sortOrder
         0: .line 321
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mOpenHelper:Landroid/database/sqlite/SQLiteOpenHelper;
            invokevirtual android.database.sqlite.SQLiteOpenHelper.getReadableDatabase:()Landroid/database/sqlite/SQLiteDatabase;
            astore 6 /* db */
        start local 6 // android.database.sqlite.SQLiteDatabase db
         1: .line 324
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mUriMatcher:Landroid/content/UriMatcher;
            aload 1 /* uri */
            invokevirtual android.content.UriMatcher.match:(Landroid/net/Uri;)I
            iconst_1
            if_icmpne 17
         2: .line 327
            aload 4 /* selectionArgs */
            iconst_0
            aaload
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifeq 6
         3: .line 328
            aconst_null
            astore 7 /* suggestSelection */
        start local 7 // java.lang.String suggestSelection
         4: .line 329
            aconst_null
            astore 8 /* myArgs */
        start local 8 // java.lang.String[] myArgs
         5: .line 330
            goto 12
        end local 8 // java.lang.String[] myArgs
        end local 7 // java.lang.String suggestSelection
         6: .line 331
      StackMap locals: android.database.sqlite.SQLiteDatabase
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "%"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* selectionArgs */
            iconst_0
            aaload
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "%"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 9 /* like */
        start local 9 // java.lang.String like
         7: .line 332
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mTwoLineDisplay:Z
            ifeq 10
         8: .line 333
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            aload 9 /* like */
            aastore
            dup
            iconst_1
            aload 9 /* like */
            aastore
            astore 8 /* myArgs */
        start local 8 // java.lang.String[] myArgs
         9: .line 334
            goto 11
        end local 8 // java.lang.String[] myArgs
        10: .line 335
      StackMap locals: android.content.SearchRecentSuggestionsProvider android.net.Uri java.lang.String[] java.lang.String java.lang.String[] java.lang.String android.database.sqlite.SQLiteDatabase top top java.lang.String
      StackMap stack:
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 9 /* like */
            aastore
            astore 8 /* myArgs */
        start local 8 // java.lang.String[] myArgs
        11: .line 337
      StackMap locals: android.content.SearchRecentSuggestionsProvider android.net.Uri java.lang.String[] java.lang.String java.lang.String[] java.lang.String android.database.sqlite.SQLiteDatabase top java.lang.String[] java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mSuggestSuggestionClause:Ljava/lang/String;
            astore 7 /* suggestSelection */
        end local 9 // java.lang.String like
        start local 7 // java.lang.String suggestSelection
        12: .line 340
      StackMap locals: android.content.SearchRecentSuggestionsProvider android.net.Uri java.lang.String[] java.lang.String java.lang.String[] java.lang.String android.database.sqlite.SQLiteDatabase java.lang.String java.lang.String[]
      StackMap stack:
            aload 6 /* db */
            ldc "suggestions"
            aload 0 /* this */
            getfield android.content.SearchRecentSuggestionsProvider.mSuggestionProjection:[Ljava/lang/String;
        13: .line 341
            aload 7 /* suggestSelection */
            aload 8 /* myArgs */
            aconst_null
            aconst_null
            ldc "date DESC"
            aconst_null
        14: .line 340
            invokevirtual android.database.sqlite.SQLiteDatabase.query:(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
            astore 9 /* c */
        start local 9 // android.database.Cursor c
        15: .line 342
            aload 9 /* c */
            aload 0 /* this */
            invokevirtual android.content.SearchRecentSuggestionsProvider.getContext:()Landroid/content/Context;
            invokevirtual android.content.Context.getContentResolver:()Landroid/content/ContentResolver;
            aload 1 /* uri */
            invokeinterface android.database.Cursor.setNotificationUri:(Landroid/content/ContentResolver;Landroid/net/Uri;)V
        16: .line 343
            aload 9 /* c */
            areturn
        end local 9 // android.database.Cursor c
        end local 8 // java.lang.String[] myArgs
        end local 7 // java.lang.String suggestSelection
        17: .line 347
      StackMap locals:
      StackMap stack:
            aload 1 /* uri */
            invokevirtual android.net.Uri.getPathSegments:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 7 /* length */
        start local 7 // int length
        18: .line 348
            iload 7 /* length */
            iconst_1
            if_icmpeq 20
            iload 7 /* length */
            iconst_2
            if_icmpeq 20
        19: .line 349
            new java.lang.IllegalArgumentException
            dup
            ldc "Unknown Uri"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 352
      StackMap locals: int
      StackMap stack:
            aload 1 /* uri */
            invokevirtual android.net.Uri.getPathSegments:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* base */
        start local 8 // java.lang.String base
        21: .line 353
            aload 8 /* base */
            ldc "suggestions"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 23
        22: .line 354
            new java.lang.IllegalArgumentException
            dup
            ldc "Unknown Uri"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        23: .line 357
      StackMap locals: java.lang.String
      StackMap stack:
            aconst_null
            astore 9 /* useProjection */
        start local 9 // java.lang.String[] useProjection
        24: .line 358
            aload 2 /* projection */
            ifnull 28
            aload 2 /* projection */
            arraylength
            ifle 28
        25: .line 359
            aload 2 /* projection */
            arraylength
            iconst_1
            iadd
            anewarray java.lang.String
            astore 9 /* useProjection */
        26: .line 360
            aload 2 /* projection */
            iconst_0
            aload 9 /* useProjection */
            iconst_0
            aload 2 /* projection */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        27: .line 361
            aload 9 /* useProjection */
            aload 2 /* projection */
            arraylength
            ldc "_id AS _id"
            aastore
        28: .line 364
      StackMap locals: java.lang.String[]
      StackMap stack:
            new java.lang.StringBuilder
            dup
            sipush 256
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 10 /* whereClause */
        start local 10 // java.lang.StringBuilder whereClause
        29: .line 365
            iload 7 /* length */
            iconst_2
            if_icmpne 31
        30: .line 366
            aload 10 /* whereClause */
            ldc "(_id = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* uri */
            invokevirtual android.net.Uri.getPathSegments:()Ljava/util/List;
            iconst_1
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        31: .line 370
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
            aload 3 /* selection */
            ifnull 37
            aload 3 /* selection */
            invokevirtual java.lang.String.length:()I
            ifle 37
        32: .line 371
            aload 10 /* whereClause */
            invokevirtual java.lang.StringBuilder.length:()I
            ifle 34
        33: .line 372
            aload 10 /* whereClause */
            ldc " AND "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        34: .line 375
      StackMap locals:
      StackMap stack:
            aload 10 /* whereClause */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        35: .line 376
            aload 10 /* whereClause */
            aload 3 /* selection */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        36: .line 377
            aload 10 /* whereClause */
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        37: .line 381
      StackMap locals:
      StackMap stack:
            aload 6 /* db */
            aload 8 /* base */
            aload 9 /* useProjection */
            aload 10 /* whereClause */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        38: .line 382
            aload 4 /* selectionArgs */
            aconst_null
            aconst_null
            aload 5 /* sortOrder */
        39: .line 383
            aconst_null
        40: .line 381
            invokevirtual android.database.sqlite.SQLiteDatabase.query:(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
            astore 11 /* c */
        start local 11 // android.database.Cursor c
        41: .line 384
            aload 11 /* c */
            aload 0 /* this */
            invokevirtual android.content.SearchRecentSuggestionsProvider.getContext:()Landroid/content/Context;
            invokevirtual android.content.Context.getContentResolver:()Landroid/content/ContentResolver;
            aload 1 /* uri */
            invokeinterface android.database.Cursor.setNotificationUri:(Landroid/content/ContentResolver;Landroid/net/Uri;)V
        42: .line 385
            aload 11 /* c */
            areturn
        end local 11 // android.database.Cursor c
        end local 10 // java.lang.StringBuilder whereClause
        end local 9 // java.lang.String[] useProjection
        end local 8 // java.lang.String base
        end local 7 // int length
        end local 6 // android.database.sqlite.SQLiteDatabase db
        end local 5 // java.lang.String sortOrder
        end local 4 // java.lang.String[] selectionArgs
        end local 3 // java.lang.String selection
        end local 2 // java.lang.String[] projection
        end local 1 // android.net.Uri uri
        end local 0 // android.content.SearchRecentSuggestionsProvider this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   43     0              this  Landroid/content/SearchRecentSuggestionsProvider;
            0   43     1               uri  Landroid/net/Uri;
            0   43     2        projection  [Ljava/lang/String;
            0   43     3         selection  Ljava/lang/String;
            0   43     4     selectionArgs  [Ljava/lang/String;
            0   43     5         sortOrder  Ljava/lang/String;
            1   43     6                db  Landroid/database/sqlite/SQLiteDatabase;
            4    6     7  suggestSelection  Ljava/lang/String;
           12   17     7  suggestSelection  Ljava/lang/String;
            5    6     8            myArgs  [Ljava/lang/String;
            9   10     8            myArgs  [Ljava/lang/String;
           11   17     8            myArgs  [Ljava/lang/String;
            7   12     9              like  Ljava/lang/String;
           15   17     9                 c  Landroid/database/Cursor;
           18   43     7            length  I
           21   43     8              base  Ljava/lang/String;
           24   43     9     useProjection  [Ljava/lang/String;
           29   43    10       whereClause  Ljava/lang/StringBuilder;
           41   43    11                 c  Landroid/database/Cursor;
    MethodParameters:
               Name  Flags
      uri            
      projection     
      selection      
      selectionArgs  
      sortOrder      

  public int update(android.net.Uri, android.content.ContentValues, java.lang.String, java.lang.String[]);
    descriptor: (Landroid/net/Uri;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // android.content.SearchRecentSuggestionsProvider this
        start local 1 // android.net.Uri uri
        start local 2 // android.content.ContentValues values
        start local 3 // java.lang.String selection
        start local 4 // java.lang.String[] selectionArgs
         0: .line 394
            new java.lang.UnsupportedOperationException
            dup
            ldc "Not implemented"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.lang.String[] selectionArgs
        end local 3 // java.lang.String selection
        end local 2 // android.content.ContentValues values
        end local 1 // android.net.Uri uri
        end local 0 // android.content.SearchRecentSuggestionsProvider this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Landroid/content/SearchRecentSuggestionsProvider;
            0    1     1            uri  Landroid/net/Uri;
            0    1     2         values  Landroid/content/ContentValues;
            0    1     3      selection  Ljava/lang/String;
            0    1     4  selectionArgs  [Ljava/lang/String;
    MethodParameters:
               Name  Flags
      uri            
      values         
      selection      
      selectionArgs  
}
SourceFile: "SearchRecentSuggestionsProvider.java"
NestMembers:
  android.content.SearchRecentSuggestionsProvider$DatabaseHelper
InnerClasses:
  private DatabaseHelper = android.content.SearchRecentSuggestionsProvider$DatabaseHelper of android.content.SearchRecentSuggestionsProvider