public final class android.provider.ContactsContract$RawContacts implements android.provider.BaseColumns, android.provider.ContactsContract$RawContactsColumns, android.provider.ContactsContract$ContactOptionsColumns, android.provider.ContactsContract$ContactNameColumns, android.provider.ContactsContract$SyncColumns
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: android.provider.ContactsContract$RawContacts
  super_class: java.lang.Object
{
  public static final android.net.Uri CONTENT_URI;
    descriptor: Landroid/net/Uri;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.lang.String CONTENT_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "vnd.android.cursor.dir/raw_contact"

  public static final java.lang.String CONTENT_ITEM_TYPE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "vnd.android.cursor.item/raw_contact"

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

  public static final int AGGREGATION_MODE_IMMEDIATE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

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

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 2842
            getstatic android.provider.ContactsContract.AUTHORITY_URI:Landroid/net/Uri;
            ldc "raw_contacts"
            invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
            putstatic android.provider.ContactsContract$RawContacts.CONTENT_URI:Landroid/net/Uri;
         1: .line 2903
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.provider.ContactsContract$RawContacts this
         0: .line 2835
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 2836
            return
        end local 0 // android.provider.ContactsContract$RawContacts this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/provider/ContactsContract$RawContacts;

  public static android.net.Uri getContactLookupUri(android.content.ContentResolver, android.net.Uri);
    descriptor: (Landroid/content/ContentResolver;Landroid/net/Uri;)Landroid/net/Uri;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // android.content.ContentResolver resolver
        start local 1 // android.net.Uri rawContactUri
         0: .line 2912
            aload 1 /* rawContactUri */
            ldc "data"
            invokestatic android.net.Uri.withAppendedPath:(Landroid/net/Uri;Ljava/lang/String;)Landroid/net/Uri;
            astore 2 /* dataUri */
        start local 2 // android.net.Uri dataUri
         1: .line 2913
            aload 0 /* resolver */
            aload 2 /* dataUri */
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
         2: .line 2914
            ldc "contact_id"
            aastore
            dup
            iconst_1
            ldc "lookup"
            aastore
         3: .line 2915
            aconst_null
            aconst_null
            aconst_null
         4: .line 2913
            invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
            astore 3 /* cursor */
        start local 3 // android.database.Cursor cursor
         5: .line 2917
            aconst_null
            astore 4 /* lookupUri */
        start local 4 // android.net.Uri lookupUri
         6: .line 2919
            aload 3 /* cursor */
            ifnull 15
            aload 3 /* cursor */
            invokeinterface android.database.Cursor.moveToFirst:()Z
            ifeq 15
         7: .line 2920
            aload 3 /* cursor */
            iconst_0
            invokeinterface android.database.Cursor.getLong:(I)J
            lstore 5 /* contactId */
        start local 5 // long contactId
         8: .line 2921
            aload 3 /* cursor */
            iconst_1
            invokeinterface android.database.Cursor.getString:(I)Ljava/lang/String;
            astore 7 /* lookupKey */
        start local 7 // java.lang.String lookupKey
         9: .line 2922
            lload 5 /* contactId */
            aload 7 /* lookupKey */
            invokestatic android.provider.ContactsContract$Contacts.getLookupUri:(JLjava/lang/String;)Landroid/net/Uri;
            astore 9
        10: .line 2925
            aload 3 /* cursor */
            ifnull 11
            aload 3 /* cursor */
            invokeinterface android.database.Cursor.close:()V
        11: .line 2922
      StackMap locals: android.content.ContentResolver android.net.Uri android.net.Uri android.database.Cursor android.net.Uri long java.lang.String top android.net.Uri
      StackMap stack:
            aload 9
            areturn
        end local 7 // java.lang.String lookupKey
        end local 5 // long contactId
        12: .line 2924
      StackMap locals: android.content.ContentResolver android.net.Uri android.net.Uri android.database.Cursor android.net.Uri
      StackMap stack: java.lang.Throwable
            astore 8
        13: .line 2925
            aload 3 /* cursor */
            ifnull 14
            aload 3 /* cursor */
            invokeinterface android.database.Cursor.close:()V
        14: .line 2926
      StackMap locals: android.content.ContentResolver android.net.Uri android.net.Uri android.database.Cursor android.net.Uri top top top java.lang.Throwable
      StackMap stack:
            aload 8
            athrow
        15: .line 2925
      StackMap locals: android.content.ContentResolver android.net.Uri android.net.Uri android.database.Cursor android.net.Uri
      StackMap stack:
            aload 3 /* cursor */
            ifnull 16
            aload 3 /* cursor */
            invokeinterface android.database.Cursor.close:()V
        16: .line 2927
      StackMap locals:
      StackMap stack:
            aload 4 /* lookupUri */
            areturn
        end local 4 // android.net.Uri lookupUri
        end local 3 // android.database.Cursor cursor
        end local 2 // android.net.Uri dataUri
        end local 1 // android.net.Uri rawContactUri
        end local 0 // android.content.ContentResolver resolver
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   17     0       resolver  Landroid/content/ContentResolver;
            0   17     1  rawContactUri  Landroid/net/Uri;
            1   17     2        dataUri  Landroid/net/Uri;
            5   17     3         cursor  Landroid/database/Cursor;
            6   17     4      lookupUri  Landroid/net/Uri;
            8   12     5      contactId  J
            9   12     7      lookupKey  Ljava/lang/String;
      Exception table:
        from    to  target  type
           6    10      12  any
    MethodParameters:
               Name  Flags
      resolver       
      rawContactUri  

  public static android.content.EntityIterator newEntityIterator(android.database.Cursor);
    descriptor: (Landroid/database/Cursor;)Landroid/content/EntityIterator;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.database.Cursor cursor
         0: .line 3088
            new android.provider.ContactsContract$RawContacts$EntityIteratorImpl
            dup
            aload 0 /* cursor */
            invokespecial android.provider.ContactsContract$RawContacts$EntityIteratorImpl.<init>:(Landroid/database/Cursor;)V
            areturn
        end local 0 // android.database.Cursor cursor
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  cursor  Landroid/database/Cursor;
    MethodParameters:
        Name  Flags
      cursor  
}
SourceFile: "ContactsContract.java"
NestHost: android.provider.ContactsContract
InnerClasses:
  protected abstract ContactNameColumns = android.provider.ContactsContract$ContactNameColumns of android.provider.ContactsContract
  protected abstract ContactOptionsColumns = android.provider.ContactsContract$ContactOptionsColumns of android.provider.ContactsContract
  public Contacts = android.provider.ContactsContract$Contacts of android.provider.ContactsContract
  public final RawContacts = android.provider.ContactsContract$RawContacts of android.provider.ContactsContract
  public final Data = android.provider.ContactsContract$RawContacts$Data of android.provider.ContactsContract$RawContacts
  public final DisplayPhoto = android.provider.ContactsContract$RawContacts$DisplayPhoto of android.provider.ContactsContract$RawContacts
  public final Entity = android.provider.ContactsContract$RawContacts$Entity of android.provider.ContactsContract$RawContacts
  private EntityIteratorImpl = android.provider.ContactsContract$RawContacts$EntityIteratorImpl of android.provider.ContactsContract$RawContacts
  public final StreamItems = android.provider.ContactsContract$RawContacts$StreamItems of android.provider.ContactsContract$RawContacts
  protected abstract RawContactsColumns = android.provider.ContactsContract$RawContactsColumns of android.provider.ContactsContract
  protected abstract SyncColumns = android.provider.ContactsContract$SyncColumns of android.provider.ContactsContract