final class android.content.res.StringBlock
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: android.content.res.StringBlock
  super_class: java.lang.Object
{
  private static final java.lang.String TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "AssetManager"

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

  private final long mNative;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean mUseSparse;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean mOwnsNative;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private android.util.SparseArray<java.lang.CharSequence> mSparseStrings;
    descriptor: Landroid/util/SparseArray;
    flags: (0x0002) ACC_PRIVATE
    Signature: Landroid/util/SparseArray<Ljava/lang/CharSequence;>;

  android.content.res.StringBlock$StyleIDs mStyleIDs;
    descriptor: Landroid/content/res/StringBlock$StyleIDs;
    flags: (0x0000) 

  public void <init>(byte[], boolean);
    descriptor: ([BZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // android.content.res.StringBlock this
        start local 1 // byte[] data
        start local 2 // boolean useSparse
         0: .line 46
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            aload 0 /* this */
            aconst_null
            putfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
         2: .line 47
            aload 0 /* this */
            aload 1 /* data */
            iconst_0
            aload 1 /* data */
            arraylength
            invokestatic android.content.res.StringBlock.nativeCreate:([BII)J
            putfield android.content.res.StringBlock.mNative:J
         3: .line 48
            aload 0 /* this */
            iload 2 /* useSparse */
            putfield android.content.res.StringBlock.mUseSparse:Z
         4: .line 49
            aload 0 /* this */
            iconst_1
            putfield android.content.res.StringBlock.mOwnsNative:Z
         5: .line 52
            return
        end local 2 // boolean useSparse
        end local 1 // byte[] data
        end local 0 // android.content.res.StringBlock this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Landroid/content/res/StringBlock;
            0    6     1       data  [B
            0    6     2  useSparse  Z
    MethodParameters:
           Name  Flags
      data       
      useSparse  

  public void <init>(byte[], int, int, boolean);
    descriptor: ([BIIZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // android.content.res.StringBlock this
        start local 1 // byte[] data
        start local 2 // int offset
        start local 3 // int size
        start local 4 // boolean useSparse
         0: .line 54
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            aload 0 /* this */
            aconst_null
            putfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
         2: .line 55
            aload 0 /* this */
            aload 1 /* data */
            iload 2 /* offset */
            iload 3 /* size */
            invokestatic android.content.res.StringBlock.nativeCreate:([BII)J
            putfield android.content.res.StringBlock.mNative:J
         3: .line 56
            aload 0 /* this */
            iload 4 /* useSparse */
            putfield android.content.res.StringBlock.mUseSparse:Z
         4: .line 57
            aload 0 /* this */
            iconst_1
            putfield android.content.res.StringBlock.mOwnsNative:Z
         5: .line 60
            return
        end local 4 // boolean useSparse
        end local 3 // int size
        end local 2 // int offset
        end local 1 // byte[] data
        end local 0 // android.content.res.StringBlock this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Landroid/content/res/StringBlock;
            0    6     1       data  [B
            0    6     2     offset  I
            0    6     3       size  I
            0    6     4  useSparse  Z
    MethodParameters:
           Name  Flags
      data       
      offset     
      size       
      useSparse  

  public java.lang.CharSequence get(int);
    descriptor: (I)Ljava/lang/CharSequence;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // android.content.res.StringBlock this
        start local 1 // int idx
         0: .line 63
            aload 0 /* this */
            dup
            astore 2
            monitorenter
         1: .line 64
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStrings:[Ljava/lang/CharSequence;
            ifnull 6
         2: .line 65
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStrings:[Ljava/lang/CharSequence;
            iload 1 /* idx */
            aaload
            astore 3 /* res */
        start local 3 // java.lang.CharSequence res
         3: .line 66
            aload 3 /* res */
            ifnull 16
         4: .line 67
            aload 3 /* res */
            aload 2
            monitorexit
         5: areturn
        end local 3 // java.lang.CharSequence res
         6: .line 69
      StackMap locals: android.content.res.StringBlock
      StackMap stack:
            aload 0 /* this */
            getfield android.content.res.StringBlock.mSparseStrings:Landroid/util/SparseArray;
            ifnull 11
         7: .line 70
            aload 0 /* this */
            getfield android.content.res.StringBlock.mSparseStrings:Landroid/util/SparseArray;
            iload 1 /* idx */
            invokevirtual android.util.SparseArray.get:(I)Ljava/lang/Object;
            checkcast java.lang.CharSequence
            astore 3 /* res */
        start local 3 // java.lang.CharSequence res
         8: .line 71
            aload 3 /* res */
            ifnull 16
         9: .line 72
            aload 3 /* res */
            aload 2
            monitorexit
        10: areturn
        end local 3 // java.lang.CharSequence res
        11: .line 75
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.content.res.StringBlock.mNative:J
            invokestatic android.content.res.StringBlock.nativeGetSize:(J)I
            istore 3 /* num */
        start local 3 // int num
        12: .line 76
            aload 0 /* this */
            getfield android.content.res.StringBlock.mUseSparse:Z
            ifeq 15
            iload 3 /* num */
            sipush 250
            if_icmple 15
        13: .line 77
            aload 0 /* this */
            new android.util.SparseArray
            dup
            invokespecial android.util.SparseArray.<init>:()V
            putfield android.content.res.StringBlock.mSparseStrings:Landroid/util/SparseArray;
        14: .line 78
            goto 16
        15: .line 79
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* num */
            anewarray java.lang.CharSequence
            putfield android.content.res.StringBlock.mStrings:[Ljava/lang/CharSequence;
        end local 3 // int num
        16: .line 82
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.content.res.StringBlock.mNative:J
            iload 1 /* idx */
            invokestatic android.content.res.StringBlock.nativeGetString:(JI)Ljava/lang/String;
            astore 3 /* str */
        start local 3 // java.lang.String str
        17: .line 83
            aload 3 /* str */
            astore 4 /* res */
        start local 4 // java.lang.CharSequence res
        18: .line 84
            aload 0 /* this */
            getfield android.content.res.StringBlock.mNative:J
            iload 1 /* idx */
            invokestatic android.content.res.StringBlock.nativeGetStyle:(JI)[I
            astore 5 /* style */
        start local 5 // int[] style
        19: .line 87
            aload 5 /* style */
            ifnull 68
        20: .line 88
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            ifnonnull 22
        21: .line 89
            aload 0 /* this */
            new android.content.res.StringBlock$StyleIDs
            dup
            invokespecial android.content.res.StringBlock$StyleIDs.<init>:()V
            putfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
        22: .line 94
      StackMap locals: java.lang.String java.lang.CharSequence int[]
      StackMap stack:
            iconst_0
            istore 6 /* styleIndex */
        start local 6 // int styleIndex
        23: goto 66
        24: .line 95
      StackMap locals: int
      StackMap stack:
            aload 5 /* style */
            iload 6 /* styleIndex */
            iaload
            istore 7 /* styleId */
        start local 7 // int styleId
        25: .line 97
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.boldId:I
            if_icmpeq 65
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.italicId:I
            if_icmpeq 65
        26: .line 98
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.underlineId:I
            if_icmpeq 65
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.ttId:I
            if_icmpeq 65
        27: .line 99
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.bigId:I
            if_icmpeq 65
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.smallId:I
            if_icmpeq 65
        28: .line 100
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.subId:I
            if_icmpeq 65
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.supId:I
            if_icmpeq 65
        29: .line 101
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.strikeId:I
            if_icmpeq 65
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.listItemId:I
            if_icmpeq 65
        30: .line 102
            iload 7 /* styleId */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            getfield android.content.res.StringBlock$StyleIDs.marqueeId:I
            if_icmpne 32
        31: .line 104
            goto 65
        32: .line 107
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield android.content.res.StringBlock.mNative:J
            iload 7 /* styleId */
            invokestatic android.content.res.StringBlock.nativeGetString:(JI)Ljava/lang/String;
            astore 8 /* styleTag */
        start local 8 // java.lang.String styleTag
        33: .line 109
            aload 8 /* styleTag */
            ldc "b"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 36
        34: .line 110
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.boldId:I
        35: .line 111
            goto 65
      StackMap locals: java.lang.String
      StackMap stack:
        36: aload 8 /* styleTag */
            ldc "i"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 39
        37: .line 112
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.italicId:I
        38: .line 113
            goto 65
      StackMap locals:
      StackMap stack:
        39: aload 8 /* styleTag */
            ldc "u"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 42
        40: .line 114
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.underlineId:I
        41: .line 115
            goto 65
      StackMap locals:
      StackMap stack:
        42: aload 8 /* styleTag */
            ldc "tt"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 45
        43: .line 116
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.ttId:I
        44: .line 117
            goto 65
      StackMap locals:
      StackMap stack:
        45: aload 8 /* styleTag */
            ldc "big"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 48
        46: .line 118
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.bigId:I
        47: .line 119
            goto 65
      StackMap locals:
      StackMap stack:
        48: aload 8 /* styleTag */
            ldc "small"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 51
        49: .line 120
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.smallId:I
        50: .line 121
            goto 65
      StackMap locals:
      StackMap stack:
        51: aload 8 /* styleTag */
            ldc "sup"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 54
        52: .line 122
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.supId:I
        53: .line 123
            goto 65
      StackMap locals:
      StackMap stack:
        54: aload 8 /* styleTag */
            ldc "sub"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 57
        55: .line 124
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.subId:I
        56: .line 125
            goto 65
      StackMap locals:
      StackMap stack:
        57: aload 8 /* styleTag */
            ldc "strike"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 60
        58: .line 126
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.strikeId:I
        59: .line 127
            goto 65
      StackMap locals:
      StackMap stack:
        60: aload 8 /* styleTag */
            ldc "li"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 63
        61: .line 128
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.listItemId:I
        62: .line 129
            goto 65
      StackMap locals:
      StackMap stack:
        63: aload 8 /* styleTag */
            ldc "marquee"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 65
        64: .line 130
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            iload 7 /* styleId */
            putfield android.content.res.StringBlock$StyleIDs.marqueeId:I
        end local 8 // java.lang.String styleTag
        end local 7 // int styleId
        65: .line 94
      StackMap locals:
      StackMap stack:
            iinc 6 /* styleIndex */ 3
      StackMap locals:
      StackMap stack:
        66: iload 6 /* styleIndex */
            aload 5 /* style */
            arraylength
            if_icmplt 24
        end local 6 // int styleIndex
        67: .line 134
            aload 0 /* this */
            aload 3 /* str */
            aload 5 /* style */
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
            invokevirtual android.content.res.StringBlock.applyStyles:(Ljava/lang/String;[ILandroid/content/res/StringBlock$StyleIDs;)Ljava/lang/CharSequence;
            astore 4 /* res */
        68: .line 136
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStrings:[Ljava/lang/CharSequence;
            ifnull 69
            aload 0 /* this */
            getfield android.content.res.StringBlock.mStrings:[Ljava/lang/CharSequence;
            iload 1 /* idx */
            aload 4 /* res */
            aastore
            goto 70
        69: .line 137
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.content.res.StringBlock.mSparseStrings:Landroid/util/SparseArray;
            iload 1 /* idx */
            aload 4 /* res */
            invokevirtual android.util.SparseArray.put:(ILjava/lang/Object;)V
        70: .line 138
      StackMap locals:
      StackMap stack:
            aload 4 /* res */
            aload 2
            monitorexit
        71: areturn
        end local 5 // int[] style
        end local 4 // java.lang.CharSequence res
        end local 3 // java.lang.String str
        72: .line 63
      StackMap locals: android.content.res.StringBlock int android.content.res.StringBlock
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
        73: athrow
        end local 1 // int idx
        end local 0 // android.content.res.StringBlock this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   74     0        this  Landroid/content/res/StringBlock;
            0   74     1         idx  I
            3    6     3         res  Ljava/lang/CharSequence;
            8   11     3         res  Ljava/lang/CharSequence;
           12   16     3         num  I
           17   72     3         str  Ljava/lang/String;
           18   72     4         res  Ljava/lang/CharSequence;
           19   72     5       style  [I
           23   67     6  styleIndex  I
           25   65     7     styleId  I
           33   65     8    styleTag  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     5      72  any
           6    10      72  any
          11    71      72  any
          72    73      72  any
    MethodParameters:
      Name  Flags
      idx   

  protected void finalize();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // android.content.res.StringBlock this
         0: .line 144
            aload 0 /* this */
            invokespecial java.lang.Object.finalize:()V
         1: .line 145
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Throwable
         2: astore 1
         3: .line 146
            aload 0 /* this */
            getfield android.content.res.StringBlock.mOwnsNative:Z
            ifeq 5
         4: .line 147
            aload 0 /* this */
            getfield android.content.res.StringBlock.mNative:J
            invokestatic android.content.res.StringBlock.nativeDestroy:(J)V
         5: .line 149
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 1
            athrow
         6: .line 146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.content.res.StringBlock.mOwnsNative:Z
            ifeq 8
         7: .line 147
            aload 0 /* this */
            getfield android.content.res.StringBlock.mNative:J
            invokestatic android.content.res.StringBlock.nativeDestroy:(J)V
         8: .line 150
      StackMap locals:
      StackMap stack:
            return
        end local 0 // android.content.res.StringBlock this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Landroid/content/res/StringBlock;
      Exception table:
        from    to  target  type
           0     2       2  any
    Exceptions:
      throws java.lang.Throwable

  private java.lang.CharSequence applyStyles(java.lang.String, int[], android.content.res.StringBlock$StyleIDs);
    descriptor: (Ljava/lang/String;[ILandroid/content/res/StringBlock$StyleIDs;)Ljava/lang/CharSequence;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=14, args_size=4
        start local 0 // android.content.res.StringBlock this
        start local 1 // java.lang.String str
        start local 2 // int[] style
        start local 3 // android.content.res.StringBlock$StyleIDs ids
         0: .line 167
            aload 2 /* style */
            arraylength
            ifne 2
         1: .line 168
            aload 1 /* str */
            areturn
         2: .line 170
      StackMap locals:
      StackMap stack:
            new android.text.SpannableString
            dup
            aload 1 /* str */
            invokespecial android.text.SpannableString.<init>:(Ljava/lang/CharSequence;)V
            astore 4 /* buffer */
        start local 4 // android.text.SpannableString buffer
         3: .line 171
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: .line 172
            goto 138
         5: .line 173
      StackMap locals: android.text.SpannableString int
      StackMap stack:
            aload 2 /* style */
            iload 5 /* i */
            iaload
            istore 6 /* type */
        start local 6 // int type
         6: .line 178
            iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.boldId:I
            if_icmpne 12
         7: .line 179
            aload 4 /* buffer */
            new android.text.style.StyleSpan
            dup
            iconst_1
            invokespecial android.text.style.StyleSpan.<init>:(I)V
         8: .line 180
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
         9: .line 181
            bipush 33
        10: .line 179
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        11: .line 182
            goto 137
      StackMap locals: int
      StackMap stack:
        12: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.italicId:I
            if_icmpne 18
        13: .line 183
            aload 4 /* buffer */
            new android.text.style.StyleSpan
            dup
            iconst_2
            invokespecial android.text.style.StyleSpan.<init>:(I)V
        14: .line 184
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        15: .line 185
            bipush 33
        16: .line 183
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        17: .line 186
            goto 137
      StackMap locals:
      StackMap stack:
        18: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.underlineId:I
            if_icmpne 24
        19: .line 187
            aload 4 /* buffer */
            new android.text.style.UnderlineSpan
            dup
            invokespecial android.text.style.UnderlineSpan.<init>:()V
        20: .line 188
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        21: .line 189
            bipush 33
        22: .line 187
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        23: .line 190
            goto 137
      StackMap locals:
      StackMap stack:
        24: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.ttId:I
            if_icmpne 30
        25: .line 191
            aload 4 /* buffer */
            new android.text.style.TypefaceSpan
            dup
            ldc "monospace"
            invokespecial android.text.style.TypefaceSpan.<init>:(Ljava/lang/String;)V
        26: .line 192
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        27: .line 193
            bipush 33
        28: .line 191
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        29: .line 194
            goto 137
      StackMap locals:
      StackMap stack:
        30: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.bigId:I
            if_icmpne 36
        31: .line 195
            aload 4 /* buffer */
            new android.text.style.RelativeSizeSpan
            dup
            ldc 1.25
            invokespecial android.text.style.RelativeSizeSpan.<init>:(F)V
        32: .line 196
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        33: .line 197
            bipush 33
        34: .line 195
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        35: .line 198
            goto 137
      StackMap locals:
      StackMap stack:
        36: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.smallId:I
            if_icmpne 42
        37: .line 199
            aload 4 /* buffer */
            new android.text.style.RelativeSizeSpan
            dup
            ldc 0.8
            invokespecial android.text.style.RelativeSizeSpan.<init>:(F)V
        38: .line 200
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        39: .line 201
            bipush 33
        40: .line 199
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        41: .line 202
            goto 137
      StackMap locals:
      StackMap stack:
        42: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.subId:I
            if_icmpne 48
        43: .line 203
            aload 4 /* buffer */
            new android.text.style.SubscriptSpan
            dup
            invokespecial android.text.style.SubscriptSpan.<init>:()V
        44: .line 204
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        45: .line 205
            bipush 33
        46: .line 203
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        47: .line 206
            goto 137
      StackMap locals:
      StackMap stack:
        48: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.supId:I
            if_icmpne 54
        49: .line 207
            aload 4 /* buffer */
            new android.text.style.SuperscriptSpan
            dup
            invokespecial android.text.style.SuperscriptSpan.<init>:()V
        50: .line 208
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        51: .line 209
            bipush 33
        52: .line 207
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        53: .line 210
            goto 137
      StackMap locals:
      StackMap stack:
        54: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.strikeId:I
            if_icmpne 60
        55: .line 211
            aload 4 /* buffer */
            new android.text.style.StrikethroughSpan
            dup
            invokespecial android.text.style.StrikethroughSpan.<init>:()V
        56: .line 212
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        57: .line 213
            bipush 33
        58: .line 211
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        59: .line 214
            goto 137
      StackMap locals:
      StackMap stack:
        60: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.listItemId:I
            if_icmpne 65
        61: .line 215
            aload 4 /* buffer */
            new android.text.style.BulletSpan
            dup
            bipush 10
            invokespecial android.text.style.BulletSpan.<init>:(I)V
        62: .line 216
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        63: .line 215
            invokestatic android.content.res.StringBlock.addParagraphSpan:(Landroid/text/Spannable;Ljava/lang/Object;II)V
        64: .line 217
            goto 137
      StackMap locals:
      StackMap stack:
        65: iload 6 /* type */
            aload 3 /* ids */
            getfield android.content.res.StringBlock$StyleIDs.marqueeId:I
            if_icmpne 71
        66: .line 218
            aload 4 /* buffer */
            getstatic android.text.TextUtils$TruncateAt.MARQUEE:Landroid/text/TextUtils$TruncateAt;
        67: .line 219
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        68: .line 220
            bipush 18
        69: .line 218
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        70: .line 221
            goto 137
        71: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.content.res.StringBlock.mNative:J
            iload 6 /* type */
            invokestatic android.content.res.StringBlock.nativeGetString:(JI)Ljava/lang/String;
            astore 7 /* tag */
        start local 7 // java.lang.String tag
        72: .line 224
            aload 7 /* tag */
            ldc "font;"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 111
        73: .line 227
            aload 7 /* tag */
            ldc ";height="
            invokestatic android.content.res.StringBlock.subtag:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* sub */
        start local 8 // java.lang.String sub
        74: .line 228
            aload 8 /* sub */
            ifnull 79
        75: .line 229
            aload 8 /* sub */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 9 /* size */
        start local 9 // int size
        76: .line 230
            aload 4 /* buffer */
            new android.content.res.StringBlock$Height
            dup
            iload 9 /* size */
            invokespecial android.content.res.StringBlock$Height.<init>:(I)V
        77: .line 231
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        78: .line 230
            invokestatic android.content.res.StringBlock.addParagraphSpan:(Landroid/text/Spannable;Ljava/lang/Object;II)V
        end local 9 // int size
        79: .line 234
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 7 /* tag */
            ldc ";size="
            invokestatic android.content.res.StringBlock.subtag:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* sub */
        80: .line 235
            aload 8 /* sub */
            ifnull 86
        81: .line 236
            aload 8 /* sub */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 9 /* size */
        start local 9 // int size
        82: .line 237
            aload 4 /* buffer */
            new android.text.style.AbsoluteSizeSpan
            dup
            iload 9 /* size */
            iconst_1
            invokespecial android.text.style.AbsoluteSizeSpan.<init>:(IZ)V
        83: .line 238
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        84: .line 239
            bipush 33
        85: .line 237
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        end local 9 // int size
        86: .line 242
      StackMap locals:
      StackMap stack:
            aload 7 /* tag */
            ldc ";fgcolor="
            invokestatic android.content.res.StringBlock.subtag:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* sub */
        87: .line 243
            aload 8 /* sub */
            ifnull 92
        88: .line 244
            aload 4 /* buffer */
            aload 8 /* sub */
            iconst_1
            invokestatic android.content.res.StringBlock.getColor:(Ljava/lang/String;Z)Landroid/text/style/CharacterStyle;
        89: .line 245
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        90: .line 246
            bipush 33
        91: .line 244
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        92: .line 249
      StackMap locals:
      StackMap stack:
            aload 7 /* tag */
            ldc ";color="
            invokestatic android.content.res.StringBlock.subtag:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* sub */
        93: .line 250
            aload 8 /* sub */
            ifnull 98
        94: .line 251
            aload 4 /* buffer */
            aload 8 /* sub */
            iconst_1
            invokestatic android.content.res.StringBlock.getColor:(Ljava/lang/String;Z)Landroid/text/style/CharacterStyle;
        95: .line 252
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
        96: .line 253
            bipush 33
        97: .line 251
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        98: .line 256
      StackMap locals:
      StackMap stack:
            aload 7 /* tag */
            ldc ";bgcolor="
            invokestatic android.content.res.StringBlock.subtag:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* sub */
        99: .line 257
            aload 8 /* sub */
            ifnull 104
       100: .line 258
            aload 4 /* buffer */
            aload 8 /* sub */
            iconst_0
            invokestatic android.content.res.StringBlock.getColor:(Ljava/lang/String;Z)Landroid/text/style/CharacterStyle;
       101: .line 259
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
       102: .line 260
            bipush 33
       103: .line 258
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
       104: .line 263
      StackMap locals:
      StackMap stack:
            aload 7 /* tag */
            ldc ";face="
            invokestatic android.content.res.StringBlock.subtag:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* sub */
       105: .line 264
            aload 8 /* sub */
            ifnull 137
       106: .line 265
            aload 4 /* buffer */
            new android.text.style.TypefaceSpan
            dup
            aload 8 /* sub */
            invokespecial android.text.style.TypefaceSpan.<init>:(Ljava/lang/String;)V
       107: .line 266
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
       108: .line 267
            bipush 33
       109: .line 265
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        end local 8 // java.lang.String sub
       110: .line 269
            goto 137
      StackMap locals:
      StackMap stack:
       111: aload 7 /* tag */
            ldc "a;"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 119
       112: .line 272
            aload 7 /* tag */
            ldc ";href="
            invokestatic android.content.res.StringBlock.subtag:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 8 /* sub */
        start local 8 // java.lang.String sub
       113: .line 273
            aload 8 /* sub */
            ifnull 137
       114: .line 274
            aload 4 /* buffer */
            new android.text.style.URLSpan
            dup
            aload 8 /* sub */
            invokespecial android.text.style.URLSpan.<init>:(Ljava/lang/String;)V
       115: .line 275
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
       116: .line 276
            bipush 33
       117: .line 274
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        end local 8 // java.lang.String sub
       118: .line 278
            goto 137
      StackMap locals:
      StackMap stack:
       119: aload 7 /* tag */
            ldc "annotation;"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 137
       120: .line 279
            aload 7 /* tag */
            invokevirtual java.lang.String.length:()I
            istore 8 /* len */
        start local 8 // int len
       121: .line 282
            aload 7 /* tag */
            bipush 59
            invokevirtual java.lang.String.indexOf:(I)I
            istore 10 /* t */
        start local 10 // int t
       122: goto 136
       123: .line 283
      StackMap locals: android.content.res.StringBlock java.lang.String int[] android.content.res.StringBlock$StyleIDs android.text.SpannableString int int java.lang.String int top int
      StackMap stack:
            aload 7 /* tag */
            bipush 61
            iload 10 /* t */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 11 /* eq */
        start local 11 // int eq
       124: .line 284
            iload 11 /* eq */
            ifge 126
       125: .line 285
            goto 137
       126: .line 288
      StackMap locals: int
      StackMap stack:
            aload 7 /* tag */
            bipush 59
            iload 11 /* eq */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 9 /* next */
        start local 9 // int next
       127: .line 289
            iload 9 /* next */
            ifge 129
       128: .line 290
            iload 8 /* len */
            istore 9 /* next */
       129: .line 293
      StackMap locals: android.content.res.StringBlock java.lang.String int[] android.content.res.StringBlock$StyleIDs android.text.SpannableString int int java.lang.String int int int int
      StackMap stack:
            aload 7 /* tag */
            iload 10 /* t */
            iconst_1
            iadd
            iload 11 /* eq */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 12 /* key */
        start local 12 // java.lang.String key
       130: .line 294
            aload 7 /* tag */
            iload 11 /* eq */
            iconst_1
            iadd
            iload 9 /* next */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 13 /* value */
        start local 13 // java.lang.String value
       131: .line 296
            aload 4 /* buffer */
            new android.text.Annotation
            dup
            aload 12 /* key */
            aload 13 /* value */
            invokespecial android.text.Annotation.<init>:(Ljava/lang/String;Ljava/lang/String;)V
       132: .line 297
            aload 2 /* style */
            iload 5 /* i */
            iconst_1
            iadd
            iaload
            aload 2 /* style */
            iload 5 /* i */
            iconst_2
            iadd
            iaload
            iconst_1
            iadd
       133: .line 298
            bipush 33
       134: .line 296
            invokevirtual android.text.SpannableString.setSpan:(Ljava/lang/Object;III)V
        end local 13 // java.lang.String value
        end local 12 // java.lang.String key
        end local 11 // int eq
       135: .line 282
            iload 9 /* next */
            istore 10 /* t */
        end local 9 // int next
      StackMap locals: android.content.res.StringBlock java.lang.String int[] android.content.res.StringBlock$StyleIDs android.text.SpannableString int int java.lang.String int top int
      StackMap stack:
       136: iload 10 /* t */
            iload 8 /* len */
            if_icmplt 123
        end local 10 // int t
        end local 8 // int len
        end local 7 // java.lang.String tag
       137: .line 303
      StackMap locals: android.content.res.StringBlock java.lang.String int[] android.content.res.StringBlock$StyleIDs android.text.SpannableString int int
      StackMap stack:
            iinc 5 /* i */ 3
        end local 6 // int type
       138: .line 172
      StackMap locals:
      StackMap stack:
            iload 5 /* i */
            aload 2 /* style */
            arraylength
            if_icmplt 5
       139: .line 305
            new android.text.SpannedString
            dup
            aload 4 /* buffer */
            invokespecial android.text.SpannedString.<init>:(Ljava/lang/CharSequence;)V
            areturn
        end local 5 // int i
        end local 4 // android.text.SpannableString buffer
        end local 3 // android.content.res.StringBlock$StyleIDs ids
        end local 2 // int[] style
        end local 1 // java.lang.String str
        end local 0 // android.content.res.StringBlock this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0  140     0    this  Landroid/content/res/StringBlock;
            0  140     1     str  Ljava/lang/String;
            0  140     2   style  [I
            0  140     3     ids  Landroid/content/res/StringBlock$StyleIDs;
            3  140     4  buffer  Landroid/text/SpannableString;
            4  140     5       i  I
            6  138     6    type  I
           72  137     7     tag  Ljava/lang/String;
           74  110     8     sub  Ljava/lang/String;
           76   79     9    size  I
           82   86     9    size  I
          113  118     8     sub  Ljava/lang/String;
          121  137     8     len  I
          127  136     9    next  I
          122  137    10       t  I
          124  135    11      eq  I
          130  135    12     key  Ljava/lang/String;
          131  135    13   value  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      str    
      style  
      ids    

  private static android.text.style.CharacterStyle getColor(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Landroid/text/style/CharacterStyle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=7, args_size=2
        start local 0 // java.lang.String color
        start local 1 // boolean foreground
         0: .line 323
            ldc -16777216
            istore 2 /* c */
        start local 2 // int c
         1: .line 325
            aload 0 /* color */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 16
         2: .line 326
            aload 0 /* color */
            ldc "@"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 12
         3: .line 327
            invokestatic android.content.res.Resources.getSystem:()Landroid/content/res/Resources;
            astore 3 /* res */
        start local 3 // android.content.res.Resources res
         4: .line 328
            aload 0 /* color */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
         5: .line 329
            aload 3 /* res */
            aload 4 /* name */
            ldc "color"
            ldc "android"
            invokevirtual android.content.res.Resources.getIdentifier:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
            istore 5 /* colorRes */
        start local 5 // int colorRes
         6: .line 330
            iload 5 /* colorRes */
            ifeq 16
         7: .line 331
            aload 3 /* res */
            iload 5 /* colorRes */
            aconst_null
            invokevirtual android.content.res.Resources.getColorStateList:(ILandroid/content/res/Resources$Theme;)Landroid/content/res/ColorStateList;
            astore 6 /* colors */
        start local 6 // android.content.res.ColorStateList colors
         8: .line 332
            iload 1 /* foreground */
            ifeq 10
         9: .line 333
            new android.text.style.TextAppearanceSpan
            dup
            aconst_null
            iconst_0
            iconst_0
            aload 6 /* colors */
            aconst_null
            invokespecial android.text.style.TextAppearanceSpan.<init>:(Ljava/lang/String;IILandroid/content/res/ColorStateList;Landroid/content/res/ColorStateList;)V
            areturn
        10: .line 335
      StackMap locals: java.lang.String int int android.content.res.Resources java.lang.String int android.content.res.ColorStateList
      StackMap stack:
            aload 6 /* colors */
            invokevirtual android.content.res.ColorStateList.getDefaultColor:()I
            istore 2 /* c */
        end local 6 // android.content.res.ColorStateList colors
        end local 5 // int colorRes
        end local 4 // java.lang.String name
        end local 3 // android.content.res.Resources res
        11: .line 338
            goto 16
        12: .line 340
      StackMap locals: java.lang.String int int
      StackMap stack:
            aload 0 /* color */
            invokestatic android.graphics.Color.parseColor:(Ljava/lang/String;)I
            istore 2 /* c */
        13: .line 341
            goto 16
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
        14: pop
        15: .line 342
            ldc -16777216
            istore 2 /* c */
        16: .line 347
      StackMap locals:
      StackMap stack:
            iload 1 /* foreground */
            ifeq 18
        17: .line 348
            new android.text.style.ForegroundColorSpan
            dup
            iload 2 /* c */
            invokespecial android.text.style.ForegroundColorSpan.<init>:(I)V
            areturn
        18: .line 350
      StackMap locals:
      StackMap stack:
            new android.text.style.BackgroundColorSpan
            dup
            iload 2 /* c */
            invokespecial android.text.style.BackgroundColorSpan.<init>:(I)V
            areturn
        end local 2 // int c
        end local 1 // boolean foreground
        end local 0 // java.lang.String color
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0       color  Ljava/lang/String;
            0   19     1  foreground  Z
            1   19     2           c  I
            4   11     3         res  Landroid/content/res/Resources;
            5   11     4        name  Ljava/lang/String;
            6   11     5    colorRes  I
            8   11     6      colors  Landroid/content/res/ColorStateList;
      Exception table:
        from    to  target  type
          12    13      14  Class java.lang.IllegalArgumentException
    MethodParameters:
            Name  Flags
      color       
      foreground  

  private static void addParagraphSpan(android.text.Spannable, java.lang.Object, int, int);
    descriptor: (Landroid/text/Spannable;Ljava/lang/Object;II)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // android.text.Spannable buffer
        start local 1 // java.lang.Object what
        start local 2 // int start
        start local 3 // int end
         0: .line 361
            aload 0 /* buffer */
            invokeinterface android.text.Spannable.length:()I
            istore 4 /* len */
        start local 4 // int len
         1: .line 363
            iload 2 /* start */
            ifeq 7
            iload 2 /* start */
            iload 4 /* len */
            if_icmpeq 7
            aload 0 /* buffer */
            iload 2 /* start */
            iconst_1
            isub
            invokeinterface android.text.Spannable.charAt:(I)C
            bipush 10
            if_icmpeq 7
         2: .line 364
            iinc 2 /* start */ -1
            goto 6
         3: .line 365
      StackMap locals: int
      StackMap stack:
            aload 0 /* buffer */
            iload 2 /* start */
            iconst_1
            isub
            invokeinterface android.text.Spannable.charAt:(I)C
            bipush 10
            if_icmpne 5
         4: .line 366
            goto 7
         5: .line 364
      StackMap locals:
      StackMap stack:
            iinc 2 /* start */ -1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* start */
            ifgt 3
         7: .line 371
      StackMap locals:
      StackMap stack:
            iload 3 /* end */
            ifeq 13
            iload 3 /* end */
            iload 4 /* len */
            if_icmpeq 13
            aload 0 /* buffer */
            iload 3 /* end */
            iconst_1
            isub
            invokeinterface android.text.Spannable.charAt:(I)C
            bipush 10
            if_icmpeq 13
         8: .line 372
            iinc 3 /* end */ 1
            goto 12
         9: .line 373
      StackMap locals:
      StackMap stack:
            aload 0 /* buffer */
            iload 3 /* end */
            iconst_1
            isub
            invokeinterface android.text.Spannable.charAt:(I)C
            bipush 10
            if_icmpne 11
        10: .line 374
            goto 13
        11: .line 372
      StackMap locals:
      StackMap stack:
            iinc 3 /* end */ 1
      StackMap locals:
      StackMap stack:
        12: iload 3 /* end */
            iload 4 /* len */
            if_icmplt 9
        13: .line 379
      StackMap locals:
      StackMap stack:
            aload 0 /* buffer */
            aload 1 /* what */
            iload 2 /* start */
            iload 3 /* end */
            bipush 51
            invokeinterface android.text.Spannable.setSpan:(Ljava/lang/Object;III)V
        14: .line 380
            return
        end local 4 // int len
        end local 3 // int end
        end local 2 // int start
        end local 1 // java.lang.Object what
        end local 0 // android.text.Spannable buffer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0  buffer  Landroid/text/Spannable;
            0   15     1    what  Ljava/lang/Object;
            0   15     2   start  I
            0   15     3     end  I
            1   15     4     len  I
    MethodParameters:
        Name  Flags
      buffer  
      what    
      start   
      end     

  private static java.lang.String subtag(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.lang.String full
        start local 1 // java.lang.String attribute
         0: .line 383
            aload 0 /* full */
            aload 1 /* attribute */
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 2 /* start */
        start local 2 // int start
         1: .line 384
            iload 2 /* start */
            ifge 3
         2: .line 385
            aconst_null
            areturn
         3: .line 388
      StackMap locals: int
      StackMap stack:
            iload 2 /* start */
            aload 1 /* attribute */
            invokevirtual java.lang.String.length:()I
            iadd
            istore 2 /* start */
         4: .line 389
            aload 0 /* full */
            bipush 59
            iload 2 /* start */
            invokevirtual java.lang.String.indexOf:(II)I
            istore 3 /* end */
        start local 3 // int end
         5: .line 391
            iload 3 /* end */
            ifge 7
         6: .line 392
            aload 0 /* full */
            iload 2 /* start */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
         7: .line 394
      StackMap locals: int
      StackMap stack:
            aload 0 /* full */
            iload 2 /* start */
            iload 3 /* end */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
        end local 3 // int end
        end local 2 // int start
        end local 1 // java.lang.String attribute
        end local 0 // java.lang.String full
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       full  Ljava/lang/String;
            0    8     1  attribute  Ljava/lang/String;
            1    8     2      start  I
            5    8     3        end  I
    MethodParameters:
           Name  Flags
      full       
      attribute  

  void <init>(long, boolean);
    descriptor: (JZ)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.content.res.StringBlock this
        start local 1 // long obj
        start local 3 // boolean useSparse
         0: .line 481
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 44
            aload 0 /* this */
            aconst_null
            putfield android.content.res.StringBlock.mStyleIDs:Landroid/content/res/StringBlock$StyleIDs;
         2: .line 482
            aload 0 /* this */
            lload 1 /* obj */
            putfield android.content.res.StringBlock.mNative:J
         3: .line 483
            aload 0 /* this */
            iload 3 /* useSparse */
            putfield android.content.res.StringBlock.mUseSparse:Z
         4: .line 484
            aload 0 /* this */
            iconst_0
            putfield android.content.res.StringBlock.mOwnsNative:Z
         5: .line 487
            return
        end local 3 // boolean useSparse
        end local 1 // long obj
        end local 0 // android.content.res.StringBlock this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Landroid/content/res/StringBlock;
            0    6     1        obj  J
            0    6     3  useSparse  Z
    MethodParameters:
           Name  Flags
      obj        
      useSparse  

  private static native long nativeCreate(byte[], int, int);
    descriptor: ([BII)J
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
        Name  Flags
      data    
      offset  
      size    

  private static native int nativeGetSize(long);
    descriptor: (J)I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      obj   

  private static native java.lang.String nativeGetString(long, int);
    descriptor: (JI)Ljava/lang/String;
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      obj   
      idx   

  private static native int[] nativeGetStyle(long, int);
    descriptor: (JI)[I
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      obj   
      idx   

  private static native void nativeDestroy(long);
    descriptor: (J)V
    flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
    MethodParameters:
      Name  Flags
      obj   
}
SourceFile: "StringBlock.java"
NestMembers:
  android.content.res.StringBlock$Height  android.content.res.StringBlock$StyleIDs
InnerClasses:
  public final Theme = android.content.res.Resources$Theme of android.content.res.Resources
  private Height = android.content.res.StringBlock$Height of android.content.res.StringBlock
  final StyleIDs = android.content.res.StringBlock$StyleIDs of android.content.res.StringBlock
  public final TruncateAt = android.text.TextUtils$TruncateAt of android.text.TextUtils