public class android.telephony.PhoneNumberUtils
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.telephony.PhoneNumberUtils
  super_class: java.lang.Object
{
  public static final int BCD_EXTENDED_TYPE_EF_ADN;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

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

  public static final char PAUSE;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 44

  public static final char WAIT;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 59

  public static final char WILD;
    descriptor: C
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 78

  private static final java.lang.String CLIR_ON;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "*31#"

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

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

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

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

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

  private static final java.lang.String BCD_EF_ADN_EXTENDED;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "*#,N;"

  private static final java.lang.String BCD_CALLED_PARTY_EXTENDED;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "*#abc"

  private static final java.util.regex.Pattern GLOBAL_PHONE_NUMBER_PATTERN;
    descriptor: Ljava/util/regex/Pattern;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

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

  private static final java.lang.String[] NANP_COUNTRIES;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

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

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

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

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

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

  static final int MIN_MATCH;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  private static final android.util.SparseIntArray KEYPAD_MAP;
    descriptor: Landroid/util/SparseIntArray;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final char PLUS_SIGN_CHAR;
    descriptor: C
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 43

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

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

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

  private static final boolean[] COUNTRY_CALLING_CALL;
    descriptor: [Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

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

  private static java.lang.String[] sConvertToEmergencyMap;
    descriptor: [Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 117
            ldc "[\\+]?[0-9.-]+"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
         1: .line 116
            putstatic android.telephony.PhoneNumberUtils.GLOBAL_PHONE_NUMBER_PATTERN:Ljava/util/regex/Pattern;
         2: .line 1202
            bipush 24
            anewarray java.lang.String
            dup
            iconst_0
         3: .line 1203
            ldc "US"
            aastore
            dup
            iconst_1
         4: .line 1204
            ldc "CA"
            aastore
            dup
            iconst_2
         5: .line 1205
            ldc "AS"
            aastore
            dup
            iconst_3
         6: .line 1206
            ldc "AI"
            aastore
            dup
            iconst_4
         7: .line 1207
            ldc "AG"
            aastore
            dup
            iconst_5
         8: .line 1208
            ldc "BS"
            aastore
            dup
            bipush 6
         9: .line 1209
            ldc "BB"
            aastore
            dup
            bipush 7
        10: .line 1210
            ldc "BM"
            aastore
            dup
            bipush 8
        11: .line 1211
            ldc "VG"
            aastore
            dup
            bipush 9
        12: .line 1212
            ldc "KY"
            aastore
            dup
            bipush 10
        13: .line 1213
            ldc "DM"
            aastore
            dup
            bipush 11
        14: .line 1214
            ldc "DO"
            aastore
            dup
            bipush 12
        15: .line 1215
            ldc "GD"
            aastore
            dup
            bipush 13
        16: .line 1216
            ldc "GU"
            aastore
            dup
            bipush 14
        17: .line 1217
            ldc "JM"
            aastore
            dup
            bipush 15
        18: .line 1218
            ldc "PR"
            aastore
            dup
            bipush 16
        19: .line 1219
            ldc "MS"
            aastore
            dup
            bipush 17
        20: .line 1220
            ldc "MP"
            aastore
            dup
            bipush 18
        21: .line 1221
            ldc "KN"
            aastore
            dup
            bipush 19
        22: .line 1222
            ldc "LC"
            aastore
            dup
            bipush 20
        23: .line 1223
            ldc "VC"
            aastore
            dup
            bipush 21
        24: .line 1224
            ldc "TT"
            aastore
            dup
            bipush 22
        25: .line 1225
            ldc "TC"
            aastore
            dup
            bipush 23
        26: .line 1226
            ldc "VI"
            aastore
        27: .line 1202
            putstatic android.telephony.PhoneNumberUtils.NANP_COUNTRIES:[Ljava/lang/String;
        28: .line 2332
            new android.util.SparseIntArray
            dup
            invokespecial android.util.SparseIntArray.<init>:()V
            putstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
        29: .line 2334
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 97
            bipush 50
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 98
            bipush 50
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 99
            bipush 50
            invokevirtual android.util.SparseIntArray.put:(II)V
        30: .line 2335
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 65
            bipush 50
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 66
            bipush 50
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 67
            bipush 50
            invokevirtual android.util.SparseIntArray.put:(II)V
        31: .line 2337
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 100
            bipush 51
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 101
            bipush 51
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 102
            bipush 51
            invokevirtual android.util.SparseIntArray.put:(II)V
        32: .line 2338
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 68
            bipush 51
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 69
            bipush 51
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 70
            bipush 51
            invokevirtual android.util.SparseIntArray.put:(II)V
        33: .line 2340
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 103
            bipush 52
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 104
            bipush 52
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 105
            bipush 52
            invokevirtual android.util.SparseIntArray.put:(II)V
        34: .line 2341
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 71
            bipush 52
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 72
            bipush 52
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 73
            bipush 52
            invokevirtual android.util.SparseIntArray.put:(II)V
        35: .line 2343
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 106
            bipush 53
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 107
            bipush 53
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 108
            bipush 53
            invokevirtual android.util.SparseIntArray.put:(II)V
        36: .line 2344
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 74
            bipush 53
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 75
            bipush 53
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 76
            bipush 53
            invokevirtual android.util.SparseIntArray.put:(II)V
        37: .line 2346
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 109
            bipush 54
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 110
            bipush 54
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 111
            bipush 54
            invokevirtual android.util.SparseIntArray.put:(II)V
        38: .line 2347
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 77
            bipush 54
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 78
            bipush 54
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 79
            bipush 54
            invokevirtual android.util.SparseIntArray.put:(II)V
        39: .line 2349
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 112
            bipush 55
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 113
            bipush 55
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 114
            bipush 55
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 115
            bipush 55
            invokevirtual android.util.SparseIntArray.put:(II)V
        40: .line 2350
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 80
            bipush 55
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 81
            bipush 55
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 82
            bipush 55
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 83
            bipush 55
            invokevirtual android.util.SparseIntArray.put:(II)V
        41: .line 2352
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 116
            bipush 56
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 117
            bipush 56
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 118
            bipush 56
            invokevirtual android.util.SparseIntArray.put:(II)V
        42: .line 2353
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 84
            bipush 56
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 85
            bipush 56
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 86
            bipush 56
            invokevirtual android.util.SparseIntArray.put:(II)V
        43: .line 2355
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 119
            bipush 57
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 120
            bipush 57
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 121
            bipush 57
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 122
            bipush 57
            invokevirtual android.util.SparseIntArray.put:(II)V
        44: .line 2356
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 87
            bipush 57
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 88
            bipush 57
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 89
            bipush 57
            invokevirtual android.util.SparseIntArray.put:(II)V
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            bipush 90
            bipush 57
            invokevirtual android.util.SparseIntArray.put:(II)V
        45: .line 2993
            bipush 100
            newarray 4
            dup
            iconst_0
        46: .line 2994
            iconst_1
            bastore
            dup
            iconst_1
            iconst_1
            bastore
            dup
            bipush 7
            iconst_1
            bastore
            dup
            bipush 20
        47: .line 2996
            iconst_1
            bastore
            dup
            bipush 27
            iconst_1
            bastore
            dup
            bipush 28
            iconst_1
            bastore
            dup
            bipush 30
        48: .line 2997
            iconst_1
            bastore
            dup
            bipush 31
            iconst_1
            bastore
            dup
            bipush 32
            iconst_1
            bastore
            dup
            bipush 33
            iconst_1
            bastore
            dup
            bipush 34
            iconst_1
            bastore
            dup
            bipush 36
            iconst_1
            bastore
            dup
            bipush 39
            iconst_1
            bastore
            dup
            bipush 40
        49: .line 2998
            iconst_1
            bastore
            dup
            bipush 43
            iconst_1
            bastore
            dup
            bipush 44
            iconst_1
            bastore
            dup
            bipush 45
            iconst_1
            bastore
            dup
            bipush 46
            iconst_1
            bastore
            dup
            bipush 47
            iconst_1
            bastore
            dup
            bipush 48
            iconst_1
            bastore
            dup
            bipush 49
            iconst_1
            bastore
            dup
            bipush 51
        50: .line 2999
            iconst_1
            bastore
            dup
            bipush 52
            iconst_1
            bastore
            dup
            bipush 53
            iconst_1
            bastore
            dup
            bipush 54
            iconst_1
            bastore
            dup
            bipush 55
            iconst_1
            bastore
            dup
            bipush 56
            iconst_1
            bastore
            dup
            bipush 57
            iconst_1
            bastore
            dup
            bipush 58
            iconst_1
            bastore
            dup
            bipush 60
        51: .line 3000
            iconst_1
            bastore
            dup
            bipush 61
            iconst_1
            bastore
            dup
            bipush 62
            iconst_1
            bastore
            dup
            bipush 63
            iconst_1
            bastore
            dup
            bipush 64
            iconst_1
            bastore
            dup
            bipush 65
            iconst_1
            bastore
            dup
            bipush 66
            iconst_1
            bastore
            dup
            bipush 81
        52: .line 3002
            iconst_1
            bastore
            dup
            bipush 82
            iconst_1
            bastore
            dup
            bipush 83
            iconst_1
            bastore
            dup
            bipush 84
            iconst_1
            bastore
            dup
            bipush 86
            iconst_1
            bastore
            dup
            bipush 89
            iconst_1
            bastore
            dup
            bipush 90
        53: .line 3003
            iconst_1
            bastore
            dup
            bipush 91
            iconst_1
            bastore
            dup
            bipush 92
            iconst_1
            bastore
            dup
            bipush 93
            iconst_1
            bastore
            dup
            bipush 94
            iconst_1
            bastore
            dup
            bipush 95
            iconst_1
            bastore
            dup
            bipush 98
            iconst_1
            bastore
        54: .line 2993
            putstatic android.telephony.PhoneNumberUtils.COUNTRY_CALLING_CALL:[Z
        55: .line 3005
            getstatic android.telephony.PhoneNumberUtils.COUNTRY_CALLING_CALL:[Z
            arraylength
            putstatic android.telephony.PhoneNumberUtils.CCC_LENGTH:I
        56: .line 3189
            aconst_null
            putstatic android.telephony.PhoneNumberUtils.sConvertToEmergencyMap:[Ljava/lang/String;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

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

  public static boolean isISODigit(char);
    descriptor: (C)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 122
            iload 0 /* c */
            bipush 48
            if_icmplt 1
            iload 0 /* c */
            bipush 57
            if_icmpgt 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static final boolean is12Key(char);
    descriptor: (C)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 128
            iload 0 /* c */
            bipush 48
            if_icmplt 1
            iload 0 /* c */
            bipush 57
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: iload 0 /* c */
            bipush 42
            if_icmpeq 2
            iload 0 /* c */
            bipush 35
            if_icmpeq 2
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static final boolean isDialable(char);
    descriptor: (C)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 134
            iload 0 /* c */
            bipush 48
            if_icmplt 1
            iload 0 /* c */
            bipush 57
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: iload 0 /* c */
            bipush 42
            if_icmpeq 2
            iload 0 /* c */
            bipush 35
            if_icmpeq 2
            iload 0 /* c */
            bipush 43
            if_icmpeq 2
            iload 0 /* c */
            bipush 78
            if_icmpeq 2
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static final boolean isReallyDialable(char);
    descriptor: (C)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 140
            iload 0 /* c */
            bipush 48
            if_icmplt 1
            iload 0 /* c */
            bipush 57
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: iload 0 /* c */
            bipush 42
            if_icmpeq 2
            iload 0 /* c */
            bipush 35
            if_icmpeq 2
            iload 0 /* c */
            bipush 43
            if_icmpeq 2
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static final boolean isNonSeparator(char);
    descriptor: (C)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 146
            iload 0 /* c */
            bipush 48
            if_icmplt 1
            iload 0 /* c */
            bipush 57
            if_icmple 4
      StackMap locals:
      StackMap stack:
         1: iload 0 /* c */
            bipush 42
            if_icmpeq 4
            iload 0 /* c */
            bipush 35
            if_icmpeq 4
            iload 0 /* c */
            bipush 43
            if_icmpeq 4
         2: .line 147
            iload 0 /* c */
            bipush 78
            if_icmpeq 4
            iload 0 /* c */
            bipush 59
            if_icmpeq 4
            iload 0 /* c */
            bipush 44
            if_icmpeq 4
         3: .line 146
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     c  C
    MethodParameters:
      Name  Flags
      c     

  public static final boolean isStartsPostDial(char);
    descriptor: (C)Z
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 155
            iload 0 /* c */
            bipush 44
            if_icmpeq 1
            iload 0 /* c */
            bipush 59
            if_icmpeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     c  C
    MethodParameters:
      Name  Flags
      c     

  private static boolean isPause(char);
    descriptor: (C)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 160
            iload 0 /* c */
            bipush 112
            if_icmpeq 1
            iload 0 /* c */
            bipush 80
            if_icmpeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     c  C
    MethodParameters:
      Name  Flags
      c     

  private static boolean isToneWait(char);
    descriptor: (C)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 165
            iload 0 /* c */
            bipush 119
            if_icmpeq 1
            iload 0 /* c */
            bipush 87
            if_icmpeq 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     c  C
    MethodParameters:
      Name  Flags
      c     

  private static boolean isSeparator(char);
    descriptor: (C)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char ch
         0: .line 171
            iload 0 /* ch */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifne 3
            bipush 97
            iload 0 /* ch */
            if_icmpgt 1
            iload 0 /* ch */
            bipush 122
            if_icmple 3
      StackMap locals:
      StackMap stack:
         1: bipush 65
            iload 0 /* ch */
            if_icmpgt 2
            iload 0 /* ch */
            bipush 90
            if_icmple 3
      StackMap locals:
      StackMap stack:
         2: iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  public static java.lang.String getNumberFromIntent(android.content.Intent, android.content.Context);
    descriptor: (Landroid/content/Intent;Landroid/content/Context;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // android.content.Intent intent
        start local 1 // android.content.Context context
         0: .line 183
            aconst_null
            astore 2 /* number */
        start local 2 // java.lang.String number
         1: .line 185
            aload 0 /* intent */
            invokevirtual android.content.Intent.getData:()Landroid/net/Uri;
            astore 3 /* uri */
        start local 3 // android.net.Uri uri
         2: .line 187
            aload 3 /* uri */
            ifnonnull 4
         3: .line 188
            aconst_null
            areturn
         4: .line 191
      StackMap locals: java.lang.String android.net.Uri
      StackMap stack:
            aload 3 /* uri */
            invokevirtual android.net.Uri.getScheme:()Ljava/lang/String;
            astore 4 /* scheme */
        start local 4 // java.lang.String scheme
         5: .line 193
            aload 4 /* scheme */
            ldc "tel"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
            aload 4 /* scheme */
            ldc "sip"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 7
         6: .line 194
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* uri */
            invokevirtual android.net.Uri.getSchemeSpecificPart:()Ljava/lang/String;
            areturn
         7: .line 197
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            ifnonnull 9
         8: .line 198
            aconst_null
            areturn
         9: .line 201
      StackMap locals:
      StackMap stack:
            aload 0 /* intent */
            aload 1 /* context */
            invokevirtual android.content.Intent.resolveType:(Landroid/content/Context;)Ljava/lang/String;
            pop
        10: .line 202
            aconst_null
            astore 5 /* phoneColumn */
        start local 5 // java.lang.String phoneColumn
        11: .line 205
            aload 3 /* uri */
            invokevirtual android.net.Uri.getAuthority:()Ljava/lang/String;
            astore 6 /* authority */
        start local 6 // java.lang.String authority
        12: .line 206
            ldc "contacts"
            aload 6 /* authority */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 15
        13: .line 207
            ldc "number"
            astore 5 /* phoneColumn */
        14: .line 208
            goto 17
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
        15: ldc "com.android.contacts"
            aload 6 /* authority */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 17
        16: .line 209
            ldc "data1"
            astore 5 /* phoneColumn */
        17: .line 212
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 7 /* c */
        start local 7 // android.database.Cursor c
        18: .line 214
            aload 1 /* context */
            invokevirtual android.content.Context.getContentResolver:()Landroid/content/ContentResolver;
            aload 3 /* uri */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 5 /* phoneColumn */
            aastore
        19: .line 215
            aconst_null
            aconst_null
            aconst_null
        20: .line 214
            invokevirtual android.content.ContentResolver.query:(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
            astore 7 /* c */
        21: .line 216
            aload 7 /* c */
            ifnull 33
        22: .line 217
            aload 7 /* c */
            invokeinterface android.database.Cursor.moveToFirst:()Z
            ifeq 33
        23: .line 218
            aload 7 /* c */
            aload 7 /* c */
            aload 5 /* phoneColumn */
            invokeinterface android.database.Cursor.getColumnIndex:(Ljava/lang/String;)I
            invokeinterface android.database.Cursor.getString:(I)Ljava/lang/String;
            astore 2 /* number */
        24: .line 221
            goto 33
      StackMap locals: android.content.Intent android.content.Context java.lang.String android.net.Uri java.lang.String java.lang.String java.lang.String android.database.Cursor
      StackMap stack: java.lang.RuntimeException
        25: astore 8 /* e */
        start local 8 // java.lang.RuntimeException e
        26: .line 222
            ldc "PhoneNumberUtils"
            ldc "Error getting phone number."
            aload 8 /* e */
            invokestatic android.telephony.Rlog.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
            pop
        end local 8 // java.lang.RuntimeException e
        27: .line 224
            aload 7 /* c */
            ifnull 35
        28: .line 225
            aload 7 /* c */
            invokeinterface android.database.Cursor.close:()V
            goto 35
        29: .line 223
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 9
        30: .line 224
            aload 7 /* c */
            ifnull 32
        31: .line 225
            aload 7 /* c */
            invokeinterface android.database.Cursor.close:()V
        32: .line 227
      StackMap locals: android.content.Intent android.content.Context java.lang.String android.net.Uri java.lang.String java.lang.String java.lang.String android.database.Cursor top java.lang.Throwable
      StackMap stack:
            aload 9
            athrow
        33: .line 224
      StackMap locals: android.content.Intent android.content.Context java.lang.String android.net.Uri java.lang.String java.lang.String java.lang.String android.database.Cursor
      StackMap stack:
            aload 7 /* c */
            ifnull 35
        34: .line 225
            aload 7 /* c */
            invokeinterface android.database.Cursor.close:()V
        35: .line 229
      StackMap locals:
      StackMap stack:
            aload 2 /* number */
            areturn
        end local 7 // android.database.Cursor c
        end local 6 // java.lang.String authority
        end local 5 // java.lang.String phoneColumn
        end local 4 // java.lang.String scheme
        end local 3 // android.net.Uri uri
        end local 2 // java.lang.String number
        end local 1 // android.content.Context context
        end local 0 // android.content.Intent intent
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   36     0       intent  Landroid/content/Intent;
            0   36     1      context  Landroid/content/Context;
            1   36     2       number  Ljava/lang/String;
            2   36     3          uri  Landroid/net/Uri;
            5   36     4       scheme  Ljava/lang/String;
           11   36     5  phoneColumn  Ljava/lang/String;
           12   36     6    authority  Ljava/lang/String;
           18   36     7            c  Landroid/database/Cursor;
           26   27     8            e  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
          18    24      25  Class java.lang.RuntimeException
          18    27      29  any
    MethodParameters:
         Name  Flags
      intent   
      context  

  public static java.lang.String extractNetworkPortion(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 244
            aload 0 /* phoneNumber */
            ifnonnull 2
         1: .line 245
            aconst_null
            areturn
         2: .line 248
      StackMap locals:
      StackMap stack:
            aload 0 /* phoneNumber */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         3: .line 249
            new java.lang.StringBuilder
            dup
            iload 1 /* len */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* ret */
        start local 2 // java.lang.StringBuilder ret
         4: .line 251
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 22
         6: .line 252
      StackMap locals: int java.lang.StringBuilder int
      StackMap stack:
            aload 0 /* phoneNumber */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         7: .line 254
            iload 4 /* c */
            bipush 10
            invokestatic java.lang.Character.digit:(CI)I
            istore 5 /* digit */
        start local 5 // int digit
         8: .line 255
            iload 5 /* digit */
            iconst_m1
            if_icmpeq 11
         9: .line 256
            aload 2 /* ret */
            iload 5 /* digit */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        10: .line 257
            goto 21
      StackMap locals: int int
      StackMap stack:
        11: iload 4 /* c */
            bipush 43
            if_icmpne 16
        12: .line 259
            aload 2 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* prefix */
        start local 6 // java.lang.String prefix
        13: .line 260
            aload 6 /* prefix */
            invokevirtual java.lang.String.length:()I
            ifeq 14
            aload 6 /* prefix */
            ldc "*31#"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 14
            aload 6 /* prefix */
            ldc "#31#"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 21
        14: .line 261
      StackMap locals: java.lang.String
      StackMap stack:
            aload 2 /* ret */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 6 // java.lang.String prefix
        15: .line 263
            goto 21
      StackMap locals:
      StackMap stack:
        16: iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 19
        17: .line 264
            aload 2 /* ret */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        18: .line 265
            goto 21
      StackMap locals:
      StackMap stack:
        19: iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isStartsPostDial:(C)Z
            ifeq 21
        20: .line 266
            goto 23
        end local 5 // int digit
        end local 4 // char c
        21: .line 251
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        22: iload 3 /* i */
            iload 1 /* len */
            if_icmplt 6
        end local 3 // int i
        23: .line 270
      StackMap locals:
      StackMap stack:
            aload 2 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder ret
        end local 1 // int len
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0  phoneNumber  Ljava/lang/String;
            3   24     1          len  I
            4   24     2          ret  Ljava/lang/StringBuilder;
            5   23     3            i  I
            7   21     4            c  C
            8   21     5        digit  I
           13   15     6       prefix  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      phoneNumber  

  public static java.lang.String extractNetworkPortionAlt(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 283
            aload 0 /* phoneNumber */
            ifnonnull 2
         1: .line 284
            aconst_null
            areturn
         2: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* phoneNumber */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         3: .line 288
            new java.lang.StringBuilder
            dup
            iload 1 /* len */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* ret */
        start local 2 // java.lang.StringBuilder ret
         4: .line 289
            iconst_0
            istore 3 /* haveSeenPlus */
        start local 3 // boolean haveSeenPlus
         5: .line 291
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 18
         7: .line 292
      StackMap locals: java.lang.String int java.lang.StringBuilder int int
      StackMap stack:
            aload 0 /* phoneNumber */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* c */
        start local 5 // char c
         8: .line 293
            iload 5 /* c */
            bipush 43
            if_icmpne 12
         9: .line 294
            iload 3 /* haveSeenPlus */
            ifeq 11
        10: .line 295
            goto 17
        11: .line 297
      StackMap locals: int
      StackMap stack:
            iconst_1
            istore 3 /* haveSeenPlus */
        12: .line 299
      StackMap locals:
      StackMap stack:
            iload 5 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 15
        13: .line 300
            aload 2 /* ret */
            iload 5 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        14: .line 301
            goto 17
      StackMap locals:
      StackMap stack:
        15: iload 5 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isStartsPostDial:(C)Z
            ifeq 17
        16: .line 302
            goto 19
        end local 5 // char c
        17: .line 291
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 4 /* i */
            iload 1 /* len */
            if_icmplt 7
        end local 4 // int i
        19: .line 306
      StackMap locals:
      StackMap stack:
            aload 2 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // boolean haveSeenPlus
        end local 2 // java.lang.StringBuilder ret
        end local 1 // int len
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   20     0   phoneNumber  Ljava/lang/String;
            3   20     1           len  I
            4   20     2           ret  Ljava/lang/StringBuilder;
            5   20     3  haveSeenPlus  Z
            6   19     4             i  I
            8   17     5             c  C
    MethodParameters:
             Name  Flags
      phoneNumber  

  public static java.lang.String stripSeparators(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 315
            aload 0 /* phoneNumber */
            ifnonnull 2
         1: .line 316
            aconst_null
            areturn
         2: .line 318
      StackMap locals:
      StackMap stack:
            aload 0 /* phoneNumber */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         3: .line 319
            new java.lang.StringBuilder
            dup
            iload 1 /* len */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* ret */
        start local 2 // java.lang.StringBuilder ret
         4: .line 321
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 14
         6: .line 322
      StackMap locals: int java.lang.StringBuilder int
      StackMap stack:
            aload 0 /* phoneNumber */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         7: .line 324
            iload 4 /* c */
            bipush 10
            invokestatic java.lang.Character.digit:(CI)I
            istore 5 /* digit */
        start local 5 // int digit
         8: .line 325
            iload 5 /* digit */
            iconst_m1
            if_icmpeq 11
         9: .line 326
            aload 2 /* ret */
            iload 5 /* digit */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        10: .line 327
            goto 13
      StackMap locals: int int
      StackMap stack:
        11: iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 13
        12: .line 328
            aload 2 /* ret */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 5 // int digit
        end local 4 // char c
        13: .line 321
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 3 /* i */
            iload 1 /* len */
            if_icmplt 6
        end local 3 // int i
        15: .line 332
            aload 2 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder ret
        end local 1 // int len
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0  phoneNumber  Ljava/lang/String;
            3   16     1          len  I
            4   16     2          ret  Ljava/lang/StringBuilder;
            5   15     3            i  I
            7   13     4            c  C
            8   13     5        digit  I
    MethodParameters:
             Name  Flags
      phoneNumber  

  public static java.lang.String convertAndStrip(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 346
            aload 0 /* phoneNumber */
            invokestatic android.telephony.PhoneNumberUtils.convertKeypadLettersToDigits:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic android.telephony.PhoneNumberUtils.stripSeparators:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  phoneNumber  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      phoneNumber  

  public static java.lang.String convertPreDial(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 356
            aload 0 /* phoneNumber */
            ifnonnull 2
         1: .line 357
            aconst_null
            areturn
         2: .line 359
      StackMap locals:
      StackMap stack:
            aload 0 /* phoneNumber */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         3: .line 360
            new java.lang.StringBuilder
            dup
            iload 1 /* len */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* ret */
        start local 2 // java.lang.StringBuilder ret
         4: .line 362
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 14
         6: .line 363
      StackMap locals: int java.lang.StringBuilder int
      StackMap stack:
            aload 0 /* phoneNumber */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         7: .line 365
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isPause:(C)Z
            ifeq 10
         8: .line 366
            bipush 44
            istore 4 /* c */
         9: .line 367
            goto 12
      StackMap locals: int
      StackMap stack:
        10: iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isToneWait:(C)Z
            ifeq 12
        11: .line 368
            bipush 59
            istore 4 /* c */
        12: .line 370
      StackMap locals:
      StackMap stack:
            aload 2 /* ret */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 4 // char c
        13: .line 362
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 3 /* i */
            iload 1 /* len */
            if_icmplt 6
        end local 3 // int i
        15: .line 372
            aload 2 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder ret
        end local 1 // int len
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0  phoneNumber  Ljava/lang/String;
            3   16     1          len  I
            4   16     2          ret  Ljava/lang/StringBuilder;
            5   15     3            i  I
            7   13     4            c  C
    MethodParameters:
             Name  Flags
      phoneNumber  

  private static int minPositive(int, int);
    descriptor: (II)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int a
        start local 1 // int b
         0: .line 378
            iload 0 /* a */
            iflt 4
            iload 1 /* b */
            iflt 4
         1: .line 379
            iload 0 /* a */
            iload 1 /* b */
            if_icmpge 2
            iload 0 /* a */
            goto 3
      StackMap locals:
      StackMap stack:
         2: iload 1 /* b */
      StackMap locals:
      StackMap stack: int
         3: ireturn
         4: .line 380
      StackMap locals:
      StackMap stack:
            iload 0 /* a */
            iflt 6
         5: .line 381
            iload 0 /* a */
            ireturn
         6: .line 382
      StackMap locals:
      StackMap stack:
            iload 1 /* b */
            iflt 8
         7: .line 383
            iload 1 /* b */
            ireturn
         8: .line 385
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 1 // int b
        end local 0 // int a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     a  I
            0    9     1     b  I
    MethodParameters:
      Name  Flags
      a     
      b     

  private static void log(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String msg
         0: .line 390
            ldc "PhoneNumberUtils"
            aload 0 /* msg */
            invokestatic android.telephony.Rlog.d:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         1: .line 391
            return
        end local 0 // java.lang.String msg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      msg   

  private static int indexOfLastNetworkChar(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // java.lang.String a
         0: .line 401
            aload 0 /* a */
            invokevirtual java.lang.String.length:()I
            istore 3 /* origLength */
        start local 3 // int origLength
         1: .line 403
            aload 0 /* a */
            bipush 44
            invokevirtual java.lang.String.indexOf:(I)I
            istore 1 /* pIndex */
        start local 1 // int pIndex
         2: .line 404
            aload 0 /* a */
            bipush 59
            invokevirtual java.lang.String.indexOf:(I)I
            istore 2 /* wIndex */
        start local 2 // int wIndex
         3: .line 406
            iload 1 /* pIndex */
            iload 2 /* wIndex */
            invokestatic android.telephony.PhoneNumberUtils.minPositive:(II)I
            istore 4 /* trimIndex */
        start local 4 // int trimIndex
         4: .line 408
            iload 4 /* trimIndex */
            ifge 6
         5: .line 409
            iload 3 /* origLength */
            iconst_1
            isub
            ireturn
         6: .line 411
      StackMap locals: java.lang.String int int int int
      StackMap stack:
            iload 4 /* trimIndex */
            iconst_1
            isub
            ireturn
        end local 4 // int trimIndex
        end local 3 // int origLength
        end local 2 // int wIndex
        end local 1 // int pIndex
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0           a  Ljava/lang/String;
            2    7     1      pIndex  I
            3    7     2      wIndex  I
            1    7     3  origLength  I
            4    7     4   trimIndex  I
    MethodParameters:
      Name  Flags
      a     

  public static java.lang.String extractPostDialPortion(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 425
            aload 0 /* phoneNumber */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 428
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 2 /* ret */
        start local 2 // java.lang.StringBuilder ret
         2: .line 430
            aload 0 /* phoneNumber */
            invokestatic android.telephony.PhoneNumberUtils.indexOfLastNetworkChar:(Ljava/lang/String;)I
            istore 1 /* trimIndex */
        start local 1 // int trimIndex
         3: .line 432
            iload 1 /* trimIndex */
            iconst_1
            iadd
            istore 3 /* i */
        start local 3 // int i
         4: aload 0 /* phoneNumber */
            invokevirtual java.lang.String.length:()I
            istore 4 /* s */
        start local 4 // int s
         5: .line 433
            goto 10
         6: .line 435
      StackMap locals: java.lang.String int java.lang.StringBuilder int int
      StackMap stack:
            aload 0 /* phoneNumber */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 5 /* c */
        start local 5 // char c
         7: .line 436
            iload 5 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 9
         8: .line 437
            aload 2 /* ret */
            iload 5 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 5 // char c
         9: .line 433
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            iload 4 /* s */
        11: .line 432
            if_icmplt 6
        end local 4 // int s
        end local 3 // int i
        12: .line 441
            aload 2 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.StringBuilder ret
        end local 1 // int trimIndex
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0  phoneNumber  Ljava/lang/String;
            3   13     1    trimIndex  I
            2   13     2          ret  Ljava/lang/StringBuilder;
            4   12     3            i  I
            5   12     4            s  I
            7    9     5            c  C
    MethodParameters:
             Name  Flags
      phoneNumber  

  public static boolean compare(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String a
        start local 1 // java.lang.String b
         0: .line 450
            aload 0 /* a */
            aload 1 /* b */
            iconst_0
            invokestatic android.telephony.PhoneNumberUtils.compare:(Ljava/lang/String;Ljava/lang/String;Z)Z
            ireturn
        end local 1 // java.lang.String b
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  Ljava/lang/String;
            0    1     1     b  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      a     
      b     

  public static boolean compare(android.content.Context, java.lang.String, java.lang.String);
    descriptor: (Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 460
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tcom.android.internal.R.bool cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
         Name  Flags
      context  
      a        
      b        

  public static boolean compare(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // java.lang.String a
        start local 1 // java.lang.String b
        start local 2 // boolean useStrictComparation
         0: .line 468
            iload 2 /* useStrictComparation */
            ifeq 1
            aload 0 /* a */
            aload 1 /* b */
            invokestatic android.telephony.PhoneNumberUtils.compareStrictly:(Ljava/lang/String;Ljava/lang/String;)Z
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* a */
            aload 1 /* b */
            invokestatic android.telephony.PhoneNumberUtils.compareLoosely:(Ljava/lang/String;Ljava/lang/String;)Z
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 2 // boolean useStrictComparation
        end local 1 // java.lang.String b
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    3     0                     a  Ljava/lang/String;
            0    3     1                     b  Ljava/lang/String;
            0    3     2  useStrictComparation  Z
    MethodParameters:
                      Name  Flags
      a                     
      b                     
      useStrictComparation  

  public static boolean compareLoosely(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=10, args_size=2
        start local 0 // java.lang.String a
        start local 1 // java.lang.String b
         0: .line 489
            iconst_0
            istore 5 /* numNonDialableCharsInA */
        start local 5 // int numNonDialableCharsInA
         1: .line 490
            iconst_0
            istore 6 /* numNonDialableCharsInB */
        start local 6 // int numNonDialableCharsInB
         2: .line 492
            aload 0 /* a */
            ifnull 3
            aload 1 /* b */
            ifnonnull 5
      StackMap locals: java.lang.String java.lang.String top top top int int
      StackMap stack:
         3: aload 0 /* a */
            aload 1 /* b */
            if_acmpne 4
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         4: iconst_0
            ireturn
         5: .line 494
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            invokevirtual java.lang.String.length:()I
            ifeq 6
            aload 1 /* b */
            invokevirtual java.lang.String.length:()I
            ifne 7
         6: .line 495
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         7: .line 498
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            invokestatic android.telephony.PhoneNumberUtils.indexOfLastNetworkChar:(Ljava/lang/String;)I
            istore 2 /* ia */
        start local 2 // int ia
         8: .line 499
            aload 1 /* b */
            invokestatic android.telephony.PhoneNumberUtils.indexOfLastNetworkChar:(Ljava/lang/String;)I
            istore 3 /* ib */
        start local 3 // int ib
         9: .line 500
            iconst_0
            istore 4 /* matched */
        start local 4 // int matched
        10: .line 502
            goto 26
        11: .line 504
      StackMap locals: java.lang.String java.lang.String int int int int int
      StackMap stack:
            iconst_0
            istore 9 /* skipCmp */
        start local 9 // boolean skipCmp
        12: .line 506
            aload 0 /* a */
            iload 2 /* ia */
            invokevirtual java.lang.String.charAt:(I)C
            istore 7 /* ca */
        start local 7 // char ca
        13: .line 508
            iload 7 /* ca */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifne 17
        14: .line 509
            iinc 2 /* ia */ -1
        15: .line 510
            iconst_1
            istore 9 /* skipCmp */
        16: .line 511
            iinc 5 /* numNonDialableCharsInA */ 1
        17: .line 514
      StackMap locals: java.lang.String java.lang.String int int int int int int top int
      StackMap stack:
            aload 1 /* b */
            iload 3 /* ib */
            invokevirtual java.lang.String.charAt:(I)C
            istore 8 /* cb */
        start local 8 // char cb
        18: .line 516
            iload 8 /* cb */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifne 22
        19: .line 517
            iinc 3 /* ib */ -1
        20: .line 518
            iconst_1
            istore 9 /* skipCmp */
        21: .line 519
            iinc 6 /* numNonDialableCharsInB */ 1
        22: .line 522
      StackMap locals: java.lang.String java.lang.String int int int int int int int int
      StackMap stack:
            iload 9 /* skipCmp */
            ifne 26
        23: .line 523
            iload 8 /* cb */
            iload 7 /* ca */
            if_icmpeq 25
            iload 7 /* ca */
            bipush 78
            if_icmpeq 25
            iload 8 /* cb */
            bipush 78
            if_icmpeq 25
        24: .line 524
            goto 27
        25: .line 526
      StackMap locals:
      StackMap stack:
            iinc 2 /* ia */ -1
            iinc 3 /* ib */ -1
            iinc 4 /* matched */ 1
        end local 9 // boolean skipCmp
        end local 8 // char cb
        end local 7 // char ca
        26: .line 502
      StackMap locals:
      StackMap stack:
            iload 2 /* ia */
            iflt 27
            iload 3 /* ib */
            ifge 11
        27: .line 530
      StackMap locals:
      StackMap stack:
            iload 4 /* matched */
            bipush 7
            if_icmpge 33
        28: .line 531
            aload 0 /* a */
            invokevirtual java.lang.String.length:()I
            iload 5 /* numNonDialableCharsInA */
            isub
            istore 7 /* effectiveALen */
        start local 7 // int effectiveALen
        29: .line 532
            aload 1 /* b */
            invokevirtual java.lang.String.length:()I
            iload 6 /* numNonDialableCharsInB */
            isub
            istore 8 /* effectiveBLen */
        start local 8 // int effectiveBLen
        30: .line 537
            iload 7 /* effectiveALen */
            iload 8 /* effectiveBLen */
            if_icmpne 32
            iload 7 /* effectiveALen */
            iload 4 /* matched */
            if_icmpne 32
        31: .line 538
            iconst_1
            ireturn
        32: .line 541
      StackMap locals: int int
      StackMap stack:
            iconst_0
            ireturn
        end local 8 // int effectiveBLen
        end local 7 // int effectiveALen
        33: .line 545
      StackMap locals:
      StackMap stack:
            iload 4 /* matched */
            bipush 7
            if_icmplt 35
            iload 2 /* ia */
            iflt 34
            iload 3 /* ib */
            ifge 35
        34: .line 546
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        35: .line 558
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            iload 2 /* ia */
            iconst_1
            iadd
            invokestatic android.telephony.PhoneNumberUtils.matchIntlPrefix:(Ljava/lang/String;I)Z
            ifeq 38
        36: .line 559
            aload 1 /* b */
            iload 3 /* ib */
            iconst_1
            iadd
            invokestatic android.telephony.PhoneNumberUtils.matchIntlPrefix:(Ljava/lang/String;I)Z
            ifeq 38
        37: .line 561
            iconst_1
            ireturn
        38: .line 564
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            iload 2 /* ia */
            iconst_1
            iadd
            invokestatic android.telephony.PhoneNumberUtils.matchTrunkPrefix:(Ljava/lang/String;I)Z
            ifeq 41
        39: .line 565
            aload 1 /* b */
            iload 3 /* ib */
            iconst_1
            iadd
            invokestatic android.telephony.PhoneNumberUtils.matchIntlPrefixAndCC:(Ljava/lang/String;I)Z
            ifeq 41
        40: .line 567
            iconst_1
            ireturn
        41: .line 570
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            iload 3 /* ib */
            iconst_1
            iadd
            invokestatic android.telephony.PhoneNumberUtils.matchTrunkPrefix:(Ljava/lang/String;I)Z
            ifeq 44
        42: .line 571
            aload 0 /* a */
            iload 2 /* ia */
            iconst_1
            iadd
            invokestatic android.telephony.PhoneNumberUtils.matchIntlPrefixAndCC:(Ljava/lang/String;I)Z
            ifeq 44
        43: .line 573
            iconst_1
            ireturn
        44: .line 576
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 6 // int numNonDialableCharsInB
        end local 5 // int numNonDialableCharsInA
        end local 4 // int matched
        end local 3 // int ib
        end local 2 // int ia
        end local 1 // java.lang.String b
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   45     0                       a  Ljava/lang/String;
            0   45     1                       b  Ljava/lang/String;
            8   45     2                      ia  I
            9   45     3                      ib  I
           10   45     4                 matched  I
            1   45     5  numNonDialableCharsInA  I
            2   45     6  numNonDialableCharsInB  I
           13   26     7                      ca  C
           18   26     8                      cb  C
           12   26     9                 skipCmp  Z
           29   33     7           effectiveALen  I
           30   33     8           effectiveBLen  I
    MethodParameters:
      Name  Flags
      a     
      b     

  public static boolean compareStrictly(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String a
        start local 1 // java.lang.String b
         0: .line 584
            aload 0 /* a */
            aload 1 /* b */
            iconst_1
            invokestatic android.telephony.PhoneNumberUtils.compareStrictly:(Ljava/lang/String;Ljava/lang/String;Z)Z
            ireturn
        end local 1 // java.lang.String b
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  Ljava/lang/String;
            0    1     1     b  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      a     
      b     

  public static boolean compareStrictly(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=16, args_size=3
        start local 0 // java.lang.String a
        start local 1 // java.lang.String b
        start local 2 // boolean acceptInvalidCCCPrefix
         0: .line 592
            aload 0 /* a */
            ifnull 1
            aload 1 /* b */
            ifnonnull 3
         1: .line 593
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            aload 1 /* b */
            if_acmpne 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 594
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            invokevirtual java.lang.String.length:()I
            ifne 5
            aload 1 /* b */
            invokevirtual java.lang.String.length:()I
            ifne 5
         4: .line 595
            iconst_0
            ireturn
         5: .line 598
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* forwardIndexA */
        start local 3 // int forwardIndexA
         6: .line 599
            iconst_0
            istore 4 /* forwardIndexB */
        start local 4 // int forwardIndexB
         7: .line 602
            aload 0 /* a */
            iload 2 /* acceptInvalidCCCPrefix */
            invokestatic android.telephony.PhoneNumberUtils.tryGetCountryCallingCodeAndNewIndex:(Ljava/lang/String;Z)Landroid/telephony/PhoneNumberUtils$CountryCallingCodeAndNewIndex;
         8: .line 601
            astore 5 /* cccA */
        start local 5 // android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex cccA
         9: .line 604
            aload 1 /* b */
            iload 2 /* acceptInvalidCCCPrefix */
            invokestatic android.telephony.PhoneNumberUtils.tryGetCountryCallingCodeAndNewIndex:(Ljava/lang/String;Z)Landroid/telephony/PhoneNumberUtils$CountryCallingCodeAndNewIndex;
        10: .line 603
            astore 6 /* cccB */
        start local 6 // android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex cccB
        11: .line 605
            iconst_0
            istore 7 /* bothHasCountryCallingCode */
        start local 7 // boolean bothHasCountryCallingCode
        12: .line 606
            iconst_1
            istore 8 /* okToIgnorePrefix */
        start local 8 // boolean okToIgnorePrefix
        13: .line 607
            iconst_0
            istore 9 /* trunkPrefixIsOmittedA */
        start local 9 // boolean trunkPrefixIsOmittedA
        14: .line 608
            iconst_0
            istore 10 /* trunkPrefixIsOmittedB */
        start local 10 // boolean trunkPrefixIsOmittedB
        15: .line 609
            aload 5 /* cccA */
            ifnull 23
            aload 6 /* cccB */
            ifnull 23
        16: .line 610
            aload 5 /* cccA */
            getfield android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex.countryCallingCode:I
            aload 6 /* cccB */
            getfield android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex.countryCallingCode:I
            if_icmpeq 18
        17: .line 612
            iconst_0
            ireturn
        18: .line 616
      StackMap locals: java.lang.String java.lang.String int int int android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex int int int int
      StackMap stack:
            iconst_0
            istore 8 /* okToIgnorePrefix */
        19: .line 617
            iconst_1
            istore 7 /* bothHasCountryCallingCode */
        20: .line 618
            aload 5 /* cccA */
            getfield android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex.newIndex:I
            istore 3 /* forwardIndexA */
        21: .line 619
            aload 6 /* cccB */
            getfield android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex.newIndex:I
            istore 4 /* forwardIndexB */
        22: .line 620
            goto 40
      StackMap locals:
      StackMap stack:
        23: aload 5 /* cccA */
            ifnonnull 26
            aload 6 /* cccB */
            ifnonnull 26
        24: .line 623
            iconst_0
            istore 8 /* okToIgnorePrefix */
        25: .line 624
            goto 40
        26: .line 625
      StackMap locals:
      StackMap stack:
            aload 5 /* cccA */
            ifnull 29
        27: .line 626
            aload 5 /* cccA */
            getfield android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex.newIndex:I
            istore 3 /* forwardIndexA */
        28: .line 627
            goto 33
        29: .line 628
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            iconst_0
            invokestatic android.telephony.PhoneNumberUtils.tryGetTrunkPrefixOmittedIndex:(Ljava/lang/String;I)I
            istore 11 /* tmp */
        start local 11 // int tmp
        30: .line 629
            iload 11 /* tmp */
            iflt 33
        31: .line 630
            iload 11 /* tmp */
            istore 3 /* forwardIndexA */
        32: .line 631
            iconst_1
            istore 9 /* trunkPrefixIsOmittedA */
        end local 11 // int tmp
        33: .line 634
      StackMap locals:
      StackMap stack:
            aload 6 /* cccB */
            ifnull 36
        34: .line 635
            aload 6 /* cccB */
            getfield android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex.newIndex:I
            istore 4 /* forwardIndexB */
        35: .line 636
            goto 40
        36: .line 637
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            iconst_0
            invokestatic android.telephony.PhoneNumberUtils.tryGetTrunkPrefixOmittedIndex:(Ljava/lang/String;I)I
            istore 11 /* tmp */
        start local 11 // int tmp
        37: .line 638
            iload 11 /* tmp */
            iflt 40
        38: .line 639
            iload 11 /* tmp */
            istore 4 /* forwardIndexB */
        39: .line 640
            iconst_1
            istore 10 /* trunkPrefixIsOmittedB */
        end local 11 // int tmp
        40: .line 645
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 11 /* backwardIndexA */
        start local 11 // int backwardIndexA
        41: .line 646
            aload 1 /* b */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            istore 12 /* backwardIndexB */
        start local 12 // int backwardIndexB
        42: .line 647
            goto 57
        43: .line 648
      StackMap locals: int int
      StackMap stack:
            iconst_0
            istore 13 /* skip_compare */
        start local 13 // boolean skip_compare
        44: .line 649
            aload 0 /* a */
            iload 11 /* backwardIndexA */
            invokevirtual java.lang.String.charAt:(I)C
            istore 14 /* chA */
        start local 14 // char chA
        45: .line 650
            aload 1 /* b */
            iload 12 /* backwardIndexB */
            invokevirtual java.lang.String.charAt:(I)C
            istore 15 /* chB */
        start local 15 // char chB
        46: .line 651
            iload 14 /* chA */
            invokestatic android.telephony.PhoneNumberUtils.isSeparator:(C)Z
            ifeq 49
        47: .line 652
            iinc 11 /* backwardIndexA */ -1
        48: .line 653
            iconst_1
            istore 13 /* skip_compare */
        49: .line 655
      StackMap locals: int int int
      StackMap stack:
            iload 15 /* chB */
            invokestatic android.telephony.PhoneNumberUtils.isSeparator:(C)Z
            ifeq 52
        50: .line 656
            iinc 12 /* backwardIndexB */ -1
        51: .line 657
            iconst_1
            istore 13 /* skip_compare */
        52: .line 660
      StackMap locals:
      StackMap stack:
            iload 13 /* skip_compare */
            ifne 57
        53: .line 661
            iload 14 /* chA */
            iload 15 /* chB */
            if_icmpeq 55
        54: .line 662
            iconst_0
            ireturn
        55: .line 664
      StackMap locals:
      StackMap stack:
            iinc 11 /* backwardIndexA */ -1
        56: .line 665
            iinc 12 /* backwardIndexB */ -1
        end local 15 // char chB
        end local 14 // char chA
        end local 13 // boolean skip_compare
        57: .line 647
      StackMap locals:
      StackMap stack:
            iload 11 /* backwardIndexA */
            iload 3 /* forwardIndexA */
            if_icmplt 58
            iload 12 /* backwardIndexB */
            iload 4 /* forwardIndexB */
            if_icmpge 43
        58: .line 669
      StackMap locals:
      StackMap stack:
            iload 8 /* okToIgnorePrefix */
            ifeq 69
        59: .line 670
            iload 9 /* trunkPrefixIsOmittedA */
            ifeq 60
            iload 3 /* forwardIndexA */
            iload 11 /* backwardIndexA */
            if_icmple 61
        60: .line 671
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            iload 3 /* forwardIndexA */
            iload 11 /* backwardIndexA */
            invokestatic android.telephony.PhoneNumberUtils.checkPrefixIsIgnorable:(Ljava/lang/String;II)Z
            ifne 64
        61: .line 672
      StackMap locals:
      StackMap stack:
            iload 2 /* acceptInvalidCCCPrefix */
            ifeq 63
        62: .line 682
            aload 0 /* a */
            aload 1 /* b */
            iconst_0
            invokestatic android.telephony.PhoneNumberUtils.compare:(Ljava/lang/String;Ljava/lang/String;Z)Z
            ireturn
        63: .line 684
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        64: .line 687
      StackMap locals:
      StackMap stack:
            iload 10 /* trunkPrefixIsOmittedB */
            ifeq 65
            iload 4 /* forwardIndexB */
            iload 12 /* backwardIndexB */
            if_icmple 66
        65: .line 688
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            iload 3 /* forwardIndexA */
            iload 12 /* backwardIndexB */
            invokestatic android.telephony.PhoneNumberUtils.checkPrefixIsIgnorable:(Ljava/lang/String;II)Z
            ifne 90
        66: .line 689
      StackMap locals:
      StackMap stack:
            iload 2 /* acceptInvalidCCCPrefix */
            ifeq 68
        67: .line 690
            aload 0 /* a */
            aload 1 /* b */
            iconst_0
            invokestatic android.telephony.PhoneNumberUtils.compare:(Ljava/lang/String;Ljava/lang/String;Z)Z
            ireturn
        68: .line 692
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        69: .line 705
      StackMap locals:
      StackMap stack:
            iload 7 /* bothHasCountryCallingCode */
            ifeq 70
            iconst_0
            goto 71
      StackMap locals:
      StackMap stack:
        70: iconst_1
      StackMap locals:
      StackMap stack: int
        71: istore 13 /* maybeNamp */
        start local 13 // boolean maybeNamp
        72: .line 706
            goto 80
        73: .line 707
      StackMap locals: int
      StackMap stack:
            aload 0 /* a */
            iload 11 /* backwardIndexA */
            invokevirtual java.lang.String.charAt:(I)C
            istore 14 /* chA */
        start local 14 // char chA
        74: .line 708
            iload 14 /* chA */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 79
        75: .line 709
            iload 13 /* maybeNamp */
            ifeq 78
            iload 14 /* chA */
            invokestatic android.telephony.PhoneNumberUtils.tryGetISODigit:(C)I
            iconst_1
            if_icmpne 78
        76: .line 710
            iconst_0
            istore 13 /* maybeNamp */
        77: .line 711
            goto 79
        78: .line 712
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
        79: .line 715
      StackMap locals:
      StackMap stack:
            iinc 11 /* backwardIndexA */ -1
        end local 14 // char chA
        80: .line 706
      StackMap locals:
      StackMap stack:
            iload 11 /* backwardIndexA */
            iload 3 /* forwardIndexA */
            if_icmpge 73
        81: .line 717
            goto 89
        82: .line 718
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            iload 12 /* backwardIndexB */
            invokevirtual java.lang.String.charAt:(I)C
            istore 14 /* chB */
        start local 14 // char chB
        83: .line 719
            iload 14 /* chB */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 88
        84: .line 720
            iload 13 /* maybeNamp */
            ifeq 87
            iload 14 /* chB */
            invokestatic android.telephony.PhoneNumberUtils.tryGetISODigit:(C)I
            iconst_1
            if_icmpne 87
        85: .line 721
            iconst_0
            istore 13 /* maybeNamp */
        86: .line 722
            goto 88
        87: .line 723
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
        88: .line 726
      StackMap locals:
      StackMap stack:
            iinc 12 /* backwardIndexB */ -1
        end local 14 // char chB
        89: .line 717
      StackMap locals:
      StackMap stack:
            iload 12 /* backwardIndexB */
            iload 4 /* forwardIndexB */
            if_icmpge 82
        end local 13 // boolean maybeNamp
        90: .line 730
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 12 // int backwardIndexB
        end local 11 // int backwardIndexA
        end local 10 // boolean trunkPrefixIsOmittedB
        end local 9 // boolean trunkPrefixIsOmittedA
        end local 8 // boolean okToIgnorePrefix
        end local 7 // boolean bothHasCountryCallingCode
        end local 6 // android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex cccB
        end local 5 // android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex cccA
        end local 4 // int forwardIndexB
        end local 3 // int forwardIndexA
        end local 2 // boolean acceptInvalidCCCPrefix
        end local 1 // java.lang.String b
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0   91     0                          a  Ljava/lang/String;
            0   91     1                          b  Ljava/lang/String;
            0   91     2     acceptInvalidCCCPrefix  Z
            6   91     3              forwardIndexA  I
            7   91     4              forwardIndexB  I
            9   91     5                       cccA  Landroid/telephony/PhoneNumberUtils$CountryCallingCodeAndNewIndex;
           11   91     6                       cccB  Landroid/telephony/PhoneNumberUtils$CountryCallingCodeAndNewIndex;
           12   91     7  bothHasCountryCallingCode  Z
           13   91     8           okToIgnorePrefix  Z
           14   91     9      trunkPrefixIsOmittedA  Z
           15   91    10      trunkPrefixIsOmittedB  Z
           30   33    11                        tmp  I
           37   40    11                        tmp  I
           41   91    11             backwardIndexA  I
           42   91    12             backwardIndexB  I
           44   57    13               skip_compare  Z
           45   57    14                        chA  C
           46   57    15                        chB  C
           72   90    13                  maybeNamp  Z
           74   80    14                        chA  C
           83   89    14                        chB  C
    MethodParameters:
                        Name  Flags
      a                       
      b                       
      acceptInvalidCCCPrefix  

  public static java.lang.String toCallerIDMinMatch(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 744
            aload 0 /* phoneNumber */
            invokestatic android.telephony.PhoneNumberUtils.extractNetworkPortionAlt:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* np */
        start local 1 // java.lang.String np
         1: .line 745
            aload 1 /* np */
            bipush 7
            invokestatic android.telephony.PhoneNumberUtils.internalGetStrippedReversed:(Ljava/lang/String;I)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String np
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0  phoneNumber  Ljava/lang/String;
            1    2     1           np  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      phoneNumber  

  public static java.lang.String getStrippedReversed(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 757
            aload 0 /* phoneNumber */
            invokestatic android.telephony.PhoneNumberUtils.extractNetworkPortionAlt:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* np */
        start local 1 // java.lang.String np
         1: .line 759
            aload 1 /* np */
            ifnonnull 2
            aconst_null
            areturn
         2: .line 761
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* np */
            aload 1 /* np */
            invokevirtual java.lang.String.length:()I
            invokestatic android.telephony.PhoneNumberUtils.internalGetStrippedReversed:(Ljava/lang/String;I)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String np
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0  phoneNumber  Ljava/lang/String;
            1    3     1           np  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      phoneNumber  

  private static java.lang.String internalGetStrippedReversed(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // java.lang.String np
        start local 1 // int numDigits
         0: .line 770
            aload 0 /* np */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 772
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            iload 1 /* numDigits */
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 2 /* ret */
        start local 2 // java.lang.StringBuilder ret
         2: .line 773
            aload 0 /* np */
            invokevirtual java.lang.String.length:()I
            istore 3 /* length */
        start local 3 // int length
         3: .line 775
            iload 3 /* length */
            iconst_1
            isub
            istore 4 /* i */
        start local 4 // int i
         4: iload 3 /* length */
            istore 5 /* s */
        start local 5 // int s
         5: .line 776
            goto 9
         6: .line 778
      StackMap locals: java.lang.String int java.lang.StringBuilder int int int
      StackMap stack:
            aload 0 /* np */
            iload 4 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* c */
        start local 6 // char c
         7: .line 780
            aload 2 /* ret */
            iload 6 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 6 // char c
         8: .line 776
            iinc 4 /* i */ -1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            iflt 11
            iload 5 /* s */
            iload 4 /* i */
            isub
            iload 1 /* numDigits */
        10: .line 775
            if_icmple 6
        end local 5 // int s
        end local 4 // int i
        11: .line 783
      StackMap locals:
      StackMap stack:
            aload 2 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // int length
        end local 2 // java.lang.StringBuilder ret
        end local 1 // int numDigits
        end local 0 // java.lang.String np
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0         np  Ljava/lang/String;
            0   12     1  numDigits  I
            2   12     2        ret  Ljava/lang/StringBuilder;
            3   12     3     length  I
            4   11     4          i  I
            5   11     5          s  I
            7    8     6          c  C
    MethodParameters:
           Name  Flags
      np         
      numDigits  

  public static java.lang.String stringFromStringAndTOA(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String s
        start local 1 // int TOA
         0: .line 794
            aload 0 /* s */
            ifnonnull 1
            aconst_null
            areturn
         1: .line 796
      StackMap locals:
      StackMap stack:
            iload 1 /* TOA */
            sipush 145
            if_icmpne 3
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            ifle 3
            aload 0 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 43
            if_icmpeq 3
         2: .line 797
            new java.lang.StringBuilder
            dup
            ldc "+"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         3: .line 800
      StackMap locals:
      StackMap stack:
            aload 0 /* s */
            areturn
        end local 1 // int TOA
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     s  Ljava/lang/String;
            0    4     1   TOA  I
    MethodParameters:
      Name  Flags
      s     
      TOA   

  public static int toaFromString(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String s
         0: .line 810
            aload 0 /* s */
            ifnull 2
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            ifle 2
            aload 0 /* s */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 43
            if_icmpne 2
         1: .line 811
            sipush 145
            ireturn
         2: .line 814
      StackMap locals:
      StackMap stack:
            sipush 129
            ireturn
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static java.lang.String calledPartyBCDToString(byte[], int, int);
    descriptor: ([BII)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // byte[] bytes
        start local 1 // int offset
        start local 2 // int length
         0: .line 837
            aload 0 /* bytes */
            iload 1 /* offset */
            iload 2 /* length */
            iconst_1
            invokestatic android.telephony.PhoneNumberUtils.calledPartyBCDToString:([BIII)Ljava/lang/String;
            areturn
        end local 2 // int length
        end local 1 // int offset
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   bytes  [B
            0    1     1  offset  I
            0    1     2  length  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      bytes   
      offset  
      length  

  public static java.lang.String calledPartyBCDToString(byte[], int, int, int);
    descriptor: ([BIII)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=4
        start local 0 // byte[] bytes
        start local 1 // int offset
        start local 2 // int length
        start local 3 // int bcdExtType
         0: .line 858
            iconst_0
            istore 4 /* prependPlus */
        start local 4 // boolean prependPlus
         1: .line 859
            new java.lang.StringBuilder
            dup
            iconst_1
            iload 2 /* length */
            iconst_2
            imul
            iadd
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 5 /* ret */
        start local 5 // java.lang.StringBuilder ret
         2: .line 861
            iload 2 /* length */
            iconst_2
            if_icmpge 4
         3: .line 862
            ldc ""
            areturn
         4: .line 866
      StackMap locals: int java.lang.StringBuilder
      StackMap stack:
            aload 0 /* bytes */
            iload 1 /* offset */
            baload
            sipush 240
            iand
            sipush 144
            if_icmpne 6
         5: .line 867
            iconst_1
            istore 4 /* prependPlus */
         6: .line 871
      StackMap locals:
      StackMap stack:
            aload 5 /* ret */
            aload 0 /* bytes */
            iload 1 /* offset */
            iconst_1
            iadd
            iload 2 /* length */
            iconst_1
            isub
            iload 3 /* bcdExtType */
         7: .line 870
            invokestatic android.telephony.PhoneNumberUtils.internalCalledPartyBCDFragmentToString:(Ljava/lang/StringBuilder;[BIII)V
         8: .line 873
            iload 4 /* prependPlus */
            ifeq 10
            aload 5 /* ret */
            invokevirtual java.lang.StringBuilder.length:()I
            ifne 10
         9: .line 875
            ldc ""
            areturn
        10: .line 878
      StackMap locals:
      StackMap stack:
            iload 4 /* prependPlus */
            ifeq 44
        11: .line 904
            aload 5 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* retString */
        start local 6 // java.lang.String retString
        12: .line 905
            ldc "(^[#*])(.*)([#*])(.*)(#)$"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            astore 7 /* p */
        start local 7 // java.util.regex.Pattern p
        13: .line 906
            aload 7 /* p */
            aload 6 /* retString */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 8 /* m */
        start local 8 // java.util.regex.Matcher m
        14: .line 907
            aload 8 /* m */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 31
        15: .line 908
            ldc ""
            aload 8 /* m */
            iconst_2
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 23
        16: .line 912
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 5 /* ret */
        17: .line 913
            aload 5 /* ret */
            aload 8 /* m */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 914
            aload 5 /* ret */
            aload 8 /* m */
            iconst_3
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 915
            aload 5 /* ret */
            aload 8 /* m */
            iconst_4
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        20: .line 916
            aload 5 /* ret */
            aload 8 /* m */
            iconst_5
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 917
            aload 5 /* ret */
            ldc "+"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 918
            goto 44
        23: .line 922
      StackMap locals: java.lang.String java.util.regex.Pattern java.util.regex.Matcher
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 5 /* ret */
        24: .line 923
            aload 5 /* ret */
            aload 8 /* m */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        25: .line 924
            aload 5 /* ret */
            aload 8 /* m */
            iconst_2
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        26: .line 925
            aload 5 /* ret */
            aload 8 /* m */
            iconst_3
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        27: .line 926
            aload 5 /* ret */
            ldc "+"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        28: .line 927
            aload 5 /* ret */
            aload 8 /* m */
            iconst_4
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        29: .line 928
            aload 5 /* ret */
            aload 8 /* m */
            iconst_5
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        30: .line 930
            goto 44
        31: .line 931
      StackMap locals:
      StackMap stack:
            ldc "(^[#*])(.*)([#*])(.*)"
            invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
            astore 7 /* p */
        32: .line 932
            aload 7 /* p */
            aload 6 /* retString */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 8 /* m */
        33: .line 933
            aload 8 /* m */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ifeq 41
        34: .line 938
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 5 /* ret */
        35: .line 939
            aload 5 /* ret */
            aload 8 /* m */
            iconst_1
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        36: .line 940
            aload 5 /* ret */
            aload 8 /* m */
            iconst_2
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        37: .line 941
            aload 5 /* ret */
            aload 8 /* m */
            iconst_3
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        38: .line 942
            aload 5 /* ret */
            ldc "+"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        39: .line 943
            aload 5 /* ret */
            aload 8 /* m */
            iconst_4
            invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        40: .line 944
            goto 44
        41: .line 946
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 5 /* ret */
        42: .line 947
            aload 5 /* ret */
            bipush 43
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        43: .line 948
            aload 5 /* ret */
            aload 6 /* retString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 8 // java.util.regex.Matcher m
        end local 7 // java.util.regex.Pattern p
        end local 6 // java.lang.String retString
        44: .line 953
      StackMap locals:
      StackMap stack:
            aload 5 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 5 // java.lang.StringBuilder ret
        end local 4 // boolean prependPlus
        end local 3 // int bcdExtType
        end local 2 // int length
        end local 1 // int offset
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   45     0        bytes  [B
            0   45     1       offset  I
            0   45     2       length  I
            0   45     3   bcdExtType  I
            1   45     4  prependPlus  Z
            2   45     5          ret  Ljava/lang/StringBuilder;
           12   44     6    retString  Ljava/lang/String;
           13   44     7            p  Ljava/util/regex/Pattern;
           14   44     8            m  Ljava/util/regex/Matcher;
    MethodParameters:
            Name  Flags
      bytes       
      offset      
      length      
      bcdExtType  

  private static void internalCalledPartyBCDFragmentToString(java.lang.StringBuilder, byte[], int, int, int);
    descriptor: (Ljava/lang/StringBuilder;[BIII)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=8, args_size=5
        start local 0 // java.lang.StringBuilder sb
        start local 1 // byte[] bytes
        start local 2 // int offset
        start local 3 // int length
        start local 4 // int bcdExtType
         0: .line 959
            iload 2 /* offset */
            istore 5 /* i */
        start local 5 // int i
         1: goto 14
         2: .line 963
      StackMap locals: int
      StackMap stack:
            aload 1 /* bytes */
            iload 5 /* i */
            baload
            bipush 15
            iand
            i2b
            iload 4 /* bcdExtType */
            invokestatic android.telephony.PhoneNumberUtils.bcdToChar:(BI)C
            istore 7 /* c */
        start local 7 // char c
         3: .line 965
            iload 7 /* c */
            ifne 5
         4: .line 966
            return
         5: .line 968
      StackMap locals: java.lang.StringBuilder byte[] int int int int top int
      StackMap stack:
            aload 0 /* sb */
            iload 7 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         6: .line 977
            aload 1 /* bytes */
            iload 5 /* i */
            baload
            iconst_4
            ishr
            bipush 15
            iand
            i2b
            istore 6 /* b */
        start local 6 // byte b
         7: .line 979
            iload 6 /* b */
            bipush 15
            if_icmpne 9
            iload 5 /* i */
            iconst_1
            iadd
            iload 3 /* length */
            iload 2 /* offset */
            iadd
            if_icmpne 9
         8: .line 981
            goto 15
         9: .line 984
      StackMap locals: java.lang.StringBuilder byte[] int int int int int int
      StackMap stack:
            iload 6 /* b */
            iload 4 /* bcdExtType */
            invokestatic android.telephony.PhoneNumberUtils.bcdToChar:(BI)C
            istore 7 /* c */
        10: .line 985
            iload 7 /* c */
            ifne 12
        11: .line 986
            return
        12: .line 989
      StackMap locals:
      StackMap stack:
            aload 0 /* sb */
            iload 7 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 7 // char c
        end local 6 // byte b
        13: .line 959
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* i */
            iload 3 /* length */
            iload 2 /* offset */
            iadd
            if_icmplt 2
        end local 5 // int i
        15: .line 992
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int bcdExtType
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] bytes
        end local 0 // java.lang.StringBuilder sb
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   16     0          sb  Ljava/lang/StringBuilder;
            0   16     1       bytes  [B
            0   16     2      offset  I
            0   16     3      length  I
            0   16     4  bcdExtType  I
            1   15     5           i  I
            7   13     6           b  B
            3   13     7           c  C
    MethodParameters:
            Name  Flags
      sb          
      bytes       
      offset      
      length      
      bcdExtType  

  public static java.lang.String calledPartyBCDFragmentToString(byte[], int, int);
    descriptor: ([BII)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // byte[] bytes
        start local 1 // int offset
        start local 2 // int length
         0: .line 1005
            aload 0 /* bytes */
            iload 1 /* offset */
            iload 2 /* length */
            iconst_1
            invokestatic android.telephony.PhoneNumberUtils.calledPartyBCDFragmentToString:([BIII)Ljava/lang/String;
            areturn
        end local 2 // int length
        end local 1 // int offset
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   bytes  [B
            0    1     1  offset  I
            0    1     2  length  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      bytes   
      offset  
      length  

  public static java.lang.String calledPartyBCDFragmentToString(byte[], int, int, int);
    descriptor: ([BIII)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // byte[] bytes
        start local 1 // int offset
        start local 2 // int length
        start local 3 // int bcdExtType
         0: .line 1014
            new java.lang.StringBuilder
            dup
            iload 2 /* length */
            iconst_2
            imul
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 4 /* ret */
        start local 4 // java.lang.StringBuilder ret
         1: .line 1015
            aload 4 /* ret */
            aload 0 /* bytes */
            iload 1 /* offset */
            iload 2 /* length */
            iload 3 /* bcdExtType */
            invokestatic android.telephony.PhoneNumberUtils.internalCalledPartyBCDFragmentToString:(Ljava/lang/StringBuilder;[BIII)V
         2: .line 1016
            aload 4 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.StringBuilder ret
        end local 3 // int bcdExtType
        end local 2 // int length
        end local 1 // int offset
        end local 0 // byte[] bytes
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0       bytes  [B
            0    3     1      offset  I
            0    3     2      length  I
            0    3     3  bcdExtType  I
            1    3     4         ret  Ljava/lang/StringBuilder;
    MethodParameters:
            Name  Flags
      bytes       
      offset      
      length      
      bcdExtType  

  private static char bcdToChar(byte, int);
    descriptor: (BI)C
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // byte b
        start local 1 // int bcdExtType
         0: .line 1024
            iload 0 /* b */
            bipush 10
            if_icmpge 2
         1: .line 1025
            bipush 48
            iload 0 /* b */
            iadd
            i2c
            ireturn
         2: .line 1028
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* extended */
        start local 2 // java.lang.String extended
         3: .line 1029
            iconst_1
            iload 1 /* bcdExtType */
            if_icmpne 6
         4: .line 1030
            ldc "*#,N;"
            astore 2 /* extended */
         5: .line 1031
            goto 8
      StackMap locals: java.lang.String
      StackMap stack:
         6: iconst_2
            iload 1 /* bcdExtType */
            if_icmpne 8
         7: .line 1032
            ldc "*#abc"
            astore 2 /* extended */
         8: .line 1034
      StackMap locals:
      StackMap stack:
            aload 2 /* extended */
            ifnull 9
            iload 0 /* b */
            bipush 10
            isub
            aload 2 /* extended */
            invokevirtual java.lang.String.length:()I
            if_icmplt 10
         9: .line 1035
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        10: .line 1038
      StackMap locals:
      StackMap stack:
            aload 2 /* extended */
            iload 0 /* b */
            bipush 10
            isub
            invokevirtual java.lang.String.charAt:(I)C
            ireturn
        end local 2 // java.lang.String extended
        end local 1 // int bcdExtType
        end local 0 // byte b
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0           b  B
            0   11     1  bcdExtType  I
            3   11     2    extended  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      b           
      bcdExtType  

  private static int charToBCD(char, int);
    descriptor: (CI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // char c
        start local 1 // int bcdExtType
         0: .line 1042
            bipush 48
            iload 0 /* c */
            if_icmpgt 2
            iload 0 /* c */
            bipush 57
            if_icmpgt 2
         1: .line 1043
            iload 0 /* c */
            bipush 48
            isub
            ireturn
         2: .line 1046
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* extended */
        start local 2 // java.lang.String extended
         3: .line 1047
            iconst_1
            iload 1 /* bcdExtType */
            if_icmpne 6
         4: .line 1048
            ldc "*#,N;"
            astore 2 /* extended */
         5: .line 1049
            goto 8
      StackMap locals: java.lang.String
      StackMap stack:
         6: iconst_2
            iload 1 /* bcdExtType */
            if_icmpne 8
         7: .line 1050
            ldc "*#abc"
            astore 2 /* extended */
         8: .line 1052
      StackMap locals:
      StackMap stack:
            aload 2 /* extended */
            ifnull 9
            aload 2 /* extended */
            iload 0 /* c */
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpne 10
         9: .line 1053
      StackMap locals:
      StackMap stack:
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "invalid char for BCD "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 1055
      StackMap locals:
      StackMap stack:
            bipush 10
            aload 2 /* extended */
            iload 0 /* c */
            invokevirtual java.lang.String.indexOf:(I)I
            iadd
            ireturn
        end local 2 // java.lang.String extended
        end local 1 // int bcdExtType
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0           c  C
            0   11     1  bcdExtType  I
            3   11     2    extended  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      c           
      bcdExtType  

  public static boolean isWellFormedSmsAddress(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String address
         0: .line 1065
            aload 0 /* address */
            invokestatic android.telephony.PhoneNumberUtils.extractNetworkPortion:(Ljava/lang/String;)Ljava/lang/String;
         1: .line 1064
            astore 1 /* networkPortion */
        start local 1 // java.lang.String networkPortion
         2: .line 1067
            aload 1 /* networkPortion */
            ldc "+"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
         3: .line 1068
            aload 1 /* networkPortion */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 6
         4: .line 1069
            aload 1 /* networkPortion */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(Ljava/lang/String;)Z
            ifeq 6
         5: .line 1067
            iconst_1
            ireturn
      StackMap locals: java.lang.String
      StackMap stack:
         6: iconst_0
            ireturn
        end local 1 // java.lang.String networkPortion
        end local 0 // java.lang.String address
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0         address  Ljava/lang/String;
            2    7     1  networkPortion  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      address  

  public static boolean isGlobalPhoneNumber(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 1073
            aload 0 /* phoneNumber */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifeq 2
         1: .line 1074
            iconst_0
            ireturn
         2: .line 1077
      StackMap locals:
      StackMap stack:
            getstatic android.telephony.PhoneNumberUtils.GLOBAL_PHONE_NUMBER_PATTERN:Ljava/util/regex/Pattern;
            aload 0 /* phoneNumber */
            invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
            astore 1 /* match */
        start local 1 // java.util.regex.Matcher match
         3: .line 1078
            aload 1 /* match */
            invokevirtual java.util.regex.Matcher.matches:()Z
            ireturn
        end local 1 // java.util.regex.Matcher match
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0  phoneNumber  Ljava/lang/String;
            3    4     1        match  Ljava/util/regex/Matcher;
    MethodParameters:
             Name  Flags
      phoneNumber  

  private static boolean isDialable(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String address
         0: .line 1082
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: aload 0 /* address */
            invokevirtual java.lang.String.length:()I
            istore 2 /* count */
        start local 2 // int count
         2: goto 6
         3: .line 1083
      StackMap locals: int int
      StackMap stack:
            aload 0 /* address */
            iload 1 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifne 5
         4: .line 1084
            iconst_0
            ireturn
         5: .line 1082
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 1 /* i */
            iload 2 /* count */
            if_icmplt 3
        end local 2 // int count
        end local 1 // int i
         7: .line 1087
            iconst_1
            ireturn
        end local 0 // java.lang.String address
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0  address  Ljava/lang/String;
            1    7     1        i  I
            2    7     2    count  I
    MethodParameters:
         Name  Flags
      address  

  private static boolean isNonSeparator(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String address
         0: .line 1091
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: aload 0 /* address */
            invokevirtual java.lang.String.length:()I
            istore 2 /* count */
        start local 2 // int count
         2: goto 6
         3: .line 1092
      StackMap locals: int int
      StackMap stack:
            aload 0 /* address */
            iload 1 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifne 5
         4: .line 1093
            iconst_0
            ireturn
         5: .line 1091
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 1 /* i */
            iload 2 /* count */
            if_icmplt 3
        end local 2 // int count
        end local 1 // int i
         7: .line 1096
            iconst_1
            ireturn
        end local 0 // java.lang.String address
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0  address  Ljava/lang/String;
            1    7     1        i  I
            2    7     2    count  I
    MethodParameters:
         Name  Flags
      address  

  public static byte[] networkPortionToCalledPartyBCD(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String s
         0: .line 1105
            aload 0 /* s */
            invokestatic android.telephony.PhoneNumberUtils.extractNetworkPortion:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* networkPortion */
        start local 1 // java.lang.String networkPortion
         1: .line 1107
            aload 1 /* networkPortion */
            iconst_0
            iconst_1
         2: .line 1106
            invokestatic android.telephony.PhoneNumberUtils.numberToCalledPartyBCDHelper:(Ljava/lang/String;ZI)[B
            areturn
        end local 1 // java.lang.String networkPortion
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0               s  Ljava/lang/String;
            1    3     1  networkPortion  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static byte[] networkPortionToCalledPartyBCDWithLength(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String s
         0: .line 1115
            aload 0 /* s */
            invokestatic android.telephony.PhoneNumberUtils.extractNetworkPortion:(Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* networkPortion */
        start local 1 // java.lang.String networkPortion
         1: .line 1117
            aload 1 /* networkPortion */
            iconst_1
            iconst_1
         2: .line 1116
            invokestatic android.telephony.PhoneNumberUtils.numberToCalledPartyBCDHelper:(Ljava/lang/String;ZI)[B
            areturn
        end local 1 // java.lang.String networkPortion
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0               s  Ljava/lang/String;
            1    3     1  networkPortion  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     

  public static byte[] numberToCalledPartyBCD(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String number
         0: .line 1134
            aload 0 /* number */
            iconst_1
            invokestatic android.telephony.PhoneNumberUtils.numberToCalledPartyBCD:(Ljava/lang/String;I)[B
            areturn
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  number  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      number  

  public static byte[] numberToCalledPartyBCD(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String number
        start local 1 // int bcdExtType
         0: .line 1149
            aload 0 /* number */
            iconst_0
            iload 1 /* bcdExtType */
            invokestatic android.telephony.PhoneNumberUtils.numberToCalledPartyBCDHelper:(Ljava/lang/String;ZI)[B
            areturn
        end local 1 // int bcdExtType
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0      number  Ljava/lang/String;
            0    1     1  bcdExtType  I
    MethodParameters:
            Name  Flags
      number      
      bcdExtType  

  private static byte[] numberToCalledPartyBCDHelper(java.lang.String, boolean, int);
    descriptor: (Ljava/lang/String;ZI)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=13, args_size=3
        start local 0 // java.lang.String number
        start local 1 // boolean includeLength
        start local 2 // int bcdExtType
         0: .line 1158
            aload 0 /* number */
            invokevirtual java.lang.String.length:()I
            istore 3 /* numberLenReal */
        start local 3 // int numberLenReal
         1: .line 1159
            iload 3 /* numberLenReal */
            istore 4 /* numberLenEffective */
        start local 4 // int numberLenEffective
         2: .line 1160
            aload 0 /* number */
            bipush 43
            invokevirtual java.lang.String.indexOf:(I)I
            iconst_m1
            if_icmpeq 3
            iconst_1
            goto 4
      StackMap locals: int int
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 5 /* hasPlus */
        start local 5 // boolean hasPlus
         5: .line 1161
            iload 5 /* hasPlus */
            ifeq 6
            iinc 4 /* numberLenEffective */ -1
         6: .line 1163
      StackMap locals: int
      StackMap stack:
            iload 4 /* numberLenEffective */
            ifne 7
            aconst_null
            areturn
         7: .line 1165
      StackMap locals:
      StackMap stack:
            iload 4 /* numberLenEffective */
            iconst_1
            iadd
            iconst_2
            idiv
            istore 6 /* resultLen */
        start local 6 // int resultLen
         8: .line 1166
            iconst_1
            istore 7 /* extraBytes */
        start local 7 // int extraBytes
         9: .line 1167
            iload 1 /* includeLength */
            ifeq 10
            iinc 7 /* extraBytes */ 1
        10: .line 1168
      StackMap locals: int int
      StackMap stack:
            iload 6 /* resultLen */
            iload 7 /* extraBytes */
            iadd
            istore 6 /* resultLen */
        11: .line 1170
            iload 6 /* resultLen */
            newarray 8
            astore 8 /* result */
        start local 8 // byte[] result
        12: .line 1172
            iconst_0
            istore 9 /* digitCount */
        start local 9 // int digitCount
        13: .line 1173
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        14: goto 25
        15: .line 1174
      StackMap locals: byte[] int int
      StackMap stack:
            aload 0 /* number */
            iload 10 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 11 /* c */
        start local 11 // char c
        16: .line 1175
            iload 11 /* c */
            bipush 43
            if_icmpne 17
            goto 24
        17: .line 1176
      StackMap locals: int
      StackMap stack:
            iload 9 /* digitCount */
            iconst_1
            iand
            iconst_1
            if_icmpne 18
            iconst_4
            goto 19
      StackMap locals:
      StackMap stack:
        18: iconst_0
      StackMap locals:
      StackMap stack: int
        19: istore 12 /* shift */
        start local 12 // int shift
        20: .line 1177
            aload 8 /* result */
            iload 7 /* extraBytes */
            iload 9 /* digitCount */
            iconst_1
            ishr
            iadd
            dup2
            baload
        21: .line 1178
            iload 11 /* c */
            iload 2 /* bcdExtType */
            invokestatic android.telephony.PhoneNumberUtils.charToBCD:(CI)I
            bipush 15
            iand
            iload 12 /* shift */
            ishl
            i2b
        22: .line 1177
            ior
            i2b
            bastore
        23: .line 1179
            iinc 9 /* digitCount */ 1
        end local 12 // int shift
        end local 11 // char c
        24: .line 1173
      StackMap locals:
      StackMap stack:
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        25: iload 10 /* i */
            iload 3 /* numberLenReal */
            if_icmplt 15
        end local 10 // int i
        26: .line 1183
            iload 9 /* digitCount */
            iconst_1
            iand
            iconst_1
            if_icmpne 27
            aload 8 /* result */
            iload 7 /* extraBytes */
            iload 9 /* digitCount */
            iconst_1
            ishr
            iadd
            dup2
            baload
            sipush 240
            ior
            i2b
            bastore
        27: .line 1185
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 10 /* offset */
        start local 10 // int offset
        28: .line 1186
            iload 1 /* includeLength */
            ifeq 29
            aload 8 /* result */
            iload 10 /* offset */
            iinc 10 /* offset */ 1
            iload 6 /* resultLen */
            iconst_1
            isub
            i2b
            bastore
        29: .line 1187
      StackMap locals: int
      StackMap stack:
            aload 8 /* result */
            iload 10 /* offset */
            iload 5 /* hasPlus */
            ifeq 30
            sipush 145
            goto 31
      StackMap locals: java.lang.String int int int int int int int byte[] int int
      StackMap stack: byte[] int
        30: sipush 129
      StackMap locals: java.lang.String int int int int int int int byte[] int int
      StackMap stack: byte[] int int
        31: i2b
            bastore
        32: .line 1189
            aload 8 /* result */
            areturn
        end local 10 // int offset
        end local 9 // int digitCount
        end local 8 // byte[] result
        end local 7 // int extraBytes
        end local 6 // int resultLen
        end local 5 // boolean hasPlus
        end local 4 // int numberLenEffective
        end local 3 // int numberLenReal
        end local 2 // int bcdExtType
        end local 1 // boolean includeLength
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   33     0              number  Ljava/lang/String;
            0   33     1       includeLength  Z
            0   33     2          bcdExtType  I
            1   33     3       numberLenReal  I
            2   33     4  numberLenEffective  I
            5   33     5             hasPlus  Z
            8   33     6           resultLen  I
            9   33     7          extraBytes  I
           12   33     8              result  [B
           13   33     9          digitCount  I
           14   26    10                   i  I
           16   24    11                   c  C
           20   24    12               shift  I
           28   33    10              offset  I
    MethodParameters:
               Name  Flags
      number         
      includeLength  
      bcdExtType     

  public static java.lang.String formatNumber(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String source
         0: .line 1245
            new android.text.SpannableStringBuilder
            dup
            aload 0 /* source */
            invokespecial android.text.SpannableStringBuilder.<init>:(Ljava/lang/CharSequence;)V
            astore 1 /* text */
        start local 1 // android.text.SpannableStringBuilder text
         1: .line 1246
            aload 1 /* text */
            invokestatic java.util.Locale.getDefault:()Ljava/util/Locale;
            invokestatic android.telephony.PhoneNumberUtils.getFormatTypeForLocale:(Ljava/util/Locale;)I
            invokestatic android.telephony.PhoneNumberUtils.formatNumber:(Landroid/text/Editable;I)V
         2: .line 1247
            aload 1 /* text */
            invokevirtual android.text.SpannableStringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // android.text.SpannableStringBuilder text
        end local 0 // java.lang.String source
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  source  Ljava/lang/String;
            1    3     1    text  Landroid/text/SpannableStringBuilder;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      source  

  public static java.lang.String formatNumber(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.String source
        start local 1 // int defaultFormattingType
         0: .line 1264
            new android.text.SpannableStringBuilder
            dup
            aload 0 /* source */
            invokespecial android.text.SpannableStringBuilder.<init>:(Ljava/lang/CharSequence;)V
            astore 2 /* text */
        start local 2 // android.text.SpannableStringBuilder text
         1: .line 1265
            aload 2 /* text */
            iload 1 /* defaultFormattingType */
            invokestatic android.telephony.PhoneNumberUtils.formatNumber:(Landroid/text/Editable;I)V
         2: .line 1266
            aload 2 /* text */
            invokevirtual android.text.SpannableStringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // android.text.SpannableStringBuilder text
        end local 1 // int defaultFormattingType
        end local 0 // java.lang.String source
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    3     0                 source  Ljava/lang/String;
            0    3     1  defaultFormattingType  I
            1    3     2                   text  Landroid/text/SpannableStringBuilder;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                       Name  Flags
      source                 
      defaultFormattingType  

  public static int getFormatTypeForLocale(java.util.Locale);
    descriptor: (Ljava/util/Locale;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // java.util.Locale locale
         0: .line 1280
            aload 0 /* locale */
            invokevirtual java.util.Locale.getCountry:()Ljava/lang/String;
            astore 1 /* country */
        start local 1 // java.lang.String country
         1: .line 1282
            aload 1 /* country */
            invokestatic android.telephony.PhoneNumberUtils.getFormatTypeFromCountryCode:(Ljava/lang/String;)I
            ireturn
        end local 1 // java.lang.String country
        end local 0 // java.util.Locale locale
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0   locale  Ljava/util/Locale;
            1    2     1  country  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      locale  

  public static void formatNumber(android.text.Editable, int);
    descriptor: (Landroid/text/Editable;I)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // android.text.Editable text
        start local 1 // int defaultFormattingType
         0: .line 1297
            iload 1 /* defaultFormattingType */
            istore 2 /* formatType */
        start local 2 // int formatType
         1: .line 1299
            aload 0 /* text */
            invokeinterface android.text.Editable.length:()I
            iconst_2
            if_icmple 10
            aload 0 /* text */
            iconst_0
            invokeinterface android.text.Editable.charAt:(I)C
            bipush 43
            if_icmpne 10
         2: .line 1300
            aload 0 /* text */
            iconst_1
            invokeinterface android.text.Editable.charAt:(I)C
            bipush 49
            if_icmpne 5
         3: .line 1301
            iconst_1
            istore 2 /* formatType */
         4: .line 1302
            goto 10
      StackMap locals: int
      StackMap stack:
         5: aload 0 /* text */
            invokeinterface android.text.Editable.length:()I
            iconst_3
            if_icmplt 9
            aload 0 /* text */
            iconst_1
            invokeinterface android.text.Editable.charAt:(I)C
            bipush 56
            if_icmpne 9
         6: .line 1303
            aload 0 /* text */
            iconst_2
            invokeinterface android.text.Editable.charAt:(I)C
            bipush 49
            if_icmpne 9
         7: .line 1304
            iconst_2
            istore 2 /* formatType */
         8: .line 1305
            goto 10
         9: .line 1306
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* formatType */
        10: .line 1310
      StackMap locals:
      StackMap stack:
            iload 2 /* formatType */
            tableswitch { // 0 - 2
                    0: 15
                    1: 11
                    2: 13
              default: 17
          }
        11: .line 1312
      StackMap locals:
      StackMap stack:
            aload 0 /* text */
            invokestatic android.telephony.PhoneNumberUtils.formatNanpNumber:(Landroid/text/Editable;)V
        12: .line 1313
            return
        13: .line 1315
      StackMap locals:
      StackMap stack:
            aload 0 /* text */
            invokestatic android.telephony.PhoneNumberUtils.formatJapaneseNumber:(Landroid/text/Editable;)V
        14: .line 1316
            return
        15: .line 1318
      StackMap locals:
      StackMap stack:
            aload 0 /* text */
            invokestatic android.telephony.PhoneNumberUtils.removeDashes:(Landroid/text/Editable;)V
        16: .line 1319
            return
        17: .line 1321
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int formatType
        end local 1 // int defaultFormattingType
        end local 0 // android.text.Editable text
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   18     0                   text  Landroid/text/Editable;
            0   18     1  defaultFormattingType  I
            1   18     2             formatType  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                       Name  Flags
      text                   
      defaultFormattingType  

  public static void formatNanpNumber(android.text.Editable);
    descriptor: (Landroid/text/Editable;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=9, args_size=1
        start local 0 // android.text.Editable text
         0: .line 1346
            aload 0 /* text */
            invokeinterface android.text.Editable.length:()I
            istore 1 /* length */
        start local 1 // int length
         1: .line 1347
            iload 1 /* length */
            ldc "+1-nnn-nnn-nnnn"
            invokevirtual java.lang.String.length:()I
            if_icmple 3
         2: .line 1349
            return
         3: .line 1350
      StackMap locals: int
      StackMap stack:
            iload 1 /* length */
            iconst_5
            if_icmpgt 5
         4: .line 1352
            return
         5: .line 1355
      StackMap locals:
      StackMap stack:
            aload 0 /* text */
            iconst_0
            iload 1 /* length */
            invokeinterface android.text.Editable.subSequence:(II)Ljava/lang/CharSequence;
            astore 2 /* saved */
        start local 2 // java.lang.CharSequence saved
         6: .line 1358
            aload 0 /* text */
            invokestatic android.telephony.PhoneNumberUtils.removeDashes:(Landroid/text/Editable;)V
         7: .line 1359
            aload 0 /* text */
            invokeinterface android.text.Editable.length:()I
            istore 1 /* length */
         8: .line 1364
            iconst_3
            newarray 10
            astore 3 /* dashPositions */
        start local 3 // int[] dashPositions
         9: .line 1365
            iconst_0
            istore 4 /* numDashes */
        start local 4 // int numDashes
        10: .line 1367
            iconst_1
            istore 5 /* state */
        start local 5 // int state
        11: .line 1368
            iconst_0
            istore 6 /* numDigits */
        start local 6 // int numDigits
        12: .line 1369
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        13: goto 38
        14: .line 1370
      StackMap locals: android.text.Editable int java.lang.CharSequence int[] int int int int
      StackMap stack:
            aload 0 /* text */
            iload 7 /* i */
            invokeinterface android.text.Editable.charAt:(I)C
            istore 8 /* c */
        start local 8 // char c
        15: .line 1371
            iload 8 /* c */
            tableswitch { // 43 - 57
                   43: 32
                   44: 35
                   45: 30
                   46: 35
                   47: 35
                   48: 19
                   49: 16
                   50: 19
                   51: 19
                   52: 19
                   53: 19
                   54: 19
                   55: 19
                   56: 19
                   57: 19
              default: 35
          }
        16: .line 1373
      StackMap locals: int
      StackMap stack:
            iload 6 /* numDigits */
            ifeq 17
            iload 5 /* state */
            iconst_2
            if_icmpne 19
        17: .line 1374
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 5 /* state */
        18: .line 1375
            goto 37
        19: .line 1387
      StackMap locals:
      StackMap stack:
            iload 5 /* state */
            iconst_2
            if_icmpne 22
        20: .line 1389
            aload 0 /* text */
            iconst_0
            iload 1 /* length */
            aload 2 /* saved */
            invokeinterface android.text.Editable.replace:(IILjava/lang/CharSequence;)Landroid/text/Editable;
            pop
        21: .line 1390
            return
        22: .line 1391
      StackMap locals:
      StackMap stack:
            iload 5 /* state */
            iconst_3
            if_icmpne 25
        23: .line 1393
            aload 3 /* dashPositions */
            iload 4 /* numDashes */
            iinc 4 /* numDashes */ 1
            iload 7 /* i */
            iastore
        24: .line 1394
            goto 27
      StackMap locals:
      StackMap stack:
        25: iload 5 /* state */
            iconst_4
            if_icmpeq 27
            iload 6 /* numDigits */
            iconst_3
            if_icmpeq 26
            iload 6 /* numDigits */
            bipush 6
            if_icmpne 27
        26: .line 1396
      StackMap locals:
      StackMap stack:
            aload 3 /* dashPositions */
            iload 4 /* numDashes */
            iinc 4 /* numDashes */ 1
            iload 7 /* i */
            iastore
        27: .line 1398
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 5 /* state */
        28: .line 1399
            iinc 6 /* numDigits */ 1
        29: .line 1400
            goto 37
        30: .line 1403
      StackMap locals:
      StackMap stack:
            iconst_4
            istore 5 /* state */
        31: .line 1404
            goto 37
        32: .line 1407
      StackMap locals:
      StackMap stack:
            iload 7 /* i */
            ifne 35
        33: .line 1409
            iconst_2
            istore 5 /* state */
        34: .line 1410
            goto 37
        35: .line 1415
      StackMap locals:
      StackMap stack:
            aload 0 /* text */
            iconst_0
            iload 1 /* length */
            aload 2 /* saved */
            invokeinterface android.text.Editable.replace:(IILjava/lang/CharSequence;)Landroid/text/Editable;
            pop
        36: .line 1416
            return
        end local 8 // char c
        37: .line 1369
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        38: iload 7 /* i */
            iload 1 /* length */
            if_icmplt 14
        end local 7 // int i
        39: .line 1420
            iload 6 /* numDigits */
            bipush 7
            if_icmpne 41
        40: .line 1422
            iinc 4 /* numDashes */ -1
        41: .line 1426
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        42: goto 46
        43: .line 1427
      StackMap locals: int
      StackMap stack:
            aload 3 /* dashPositions */
            iload 7 /* i */
            iaload
            istore 8 /* pos */
        start local 8 // int pos
        44: .line 1428
            aload 0 /* text */
            iload 8 /* pos */
            iload 7 /* i */
            iadd
            iload 8 /* pos */
            iload 7 /* i */
            iadd
            ldc "-"
            invokeinterface android.text.Editable.replace:(IILjava/lang/CharSequence;)Landroid/text/Editable;
            pop
        end local 8 // int pos
        45: .line 1426
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        46: iload 7 /* i */
            iload 4 /* numDashes */
            if_icmplt 43
        end local 7 // int i
        47: .line 1432
            aload 0 /* text */
            invokeinterface android.text.Editable.length:()I
            istore 7 /* len */
        start local 7 // int len
        48: .line 1433
            goto 52
        49: .line 1434
      StackMap locals:
      StackMap stack:
            aload 0 /* text */
            iload 7 /* len */
            iconst_1
            isub
            invokeinterface android.text.Editable.charAt:(I)C
            bipush 45
            if_icmpne 53
        50: .line 1435
            aload 0 /* text */
            iload 7 /* len */
            iconst_1
            isub
            iload 7 /* len */
            invokeinterface android.text.Editable.delete:(II)Landroid/text/Editable;
            pop
        51: .line 1436
            iinc 7 /* len */ -1
        52: .line 1433
      StackMap locals:
      StackMap stack:
            iload 7 /* len */
            ifgt 49
        53: .line 1441
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int len
        end local 6 // int numDigits
        end local 5 // int state
        end local 4 // int numDashes
        end local 3 // int[] dashPositions
        end local 2 // java.lang.CharSequence saved
        end local 1 // int length
        end local 0 // android.text.Editable text
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   54     0           text  Landroid/text/Editable;
            1   54     1         length  I
            6   54     2          saved  Ljava/lang/CharSequence;
            9   54     3  dashPositions  [I
           10   54     4      numDashes  I
           11   54     5          state  I
           12   54     6      numDigits  I
           13   39     7              i  I
           15   37     8              c  C
           42   47     7              i  I
           44   45     8            pos  I
           48   54     7            len  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      text  

  public static void formatJapaneseNumber(android.text.Editable);
    descriptor: (Landroid/text/Editable;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.text.Editable text
         0: .line 1462
            aload 0 /* text */
            invokestatic android.telephony.JapanesePhoneNumberFormatter.format:(Landroid/text/Editable;)V
         1: .line 1463
            return
        end local 0 // android.text.Editable text
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  text  Landroid/text/Editable;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      text  

  private static void removeDashes(android.text.Editable);
    descriptor: (Landroid/text/Editable;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // android.text.Editable text
         0: .line 1471
            iconst_0
            istore 1 /* p */
        start local 1 // int p
         1: .line 1472
            goto 6
         2: .line 1473
      StackMap locals: int
      StackMap stack:
            aload 0 /* text */
            iload 1 /* p */
            invokeinterface android.text.Editable.charAt:(I)C
            bipush 45
            if_icmpne 5
         3: .line 1474
            aload 0 /* text */
            iload 1 /* p */
            iload 1 /* p */
            iconst_1
            iadd
            invokeinterface android.text.Editable.delete:(II)Landroid/text/Editable;
            pop
         4: .line 1475
            goto 6
         5: .line 1476
      StackMap locals:
      StackMap stack:
            iinc 1 /* p */ 1
         6: .line 1472
      StackMap locals:
      StackMap stack:
            iload 1 /* p */
            aload 0 /* text */
            invokeinterface android.text.Editable.length:()I
            if_icmplt 2
         7: .line 1479
            return
        end local 1 // int p
        end local 0 // android.text.Editable text
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  text  Landroid/text/Editable;
            1    8     1     p  I
    MethodParameters:
      Name  Flags
      text  

  public static java.lang.String formatNumberToE164(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 1489
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tPhoneNumberFormat cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
                   Name  Flags
      phoneNumber        
      defaultCountryIso  

  public static java.lang.String formatNumberToRFC3966(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 1500
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tPhoneNumberFormat cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
                   Name  Flags
      phoneNumber        
      defaultCountryIso  

  static java.lang.String formatNumberInternal(java.lang.String, java.lang.String, PhoneNumberFormat);
    descriptor: (Ljava/lang/String;Ljava/lang/String;LPhoneNumberFormat;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1517
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tPhoneNumberFormat cannot be resolved to a type\n\tPhoneNumberUtil cannot be resolved to a type\n\tPhoneNumberUtil cannot be resolved\n\tPhoneNumber cannot be resolved to a type\n\tNumberParseException cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
                   Name  Flags
      rawPhoneNumber     
      defaultCountryIso  
      formatIdentifier   

  public static boolean isInternationalNumber(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 1550
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tPhoneNumberUtil cannot be resolved to a type\n\tPhoneNumberUtil cannot be resolved\n\tPhoneNumber cannot be resolved to a type\n\tNumberParseException cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
                   Name  Flags
      phoneNumber        
      defaultCountryIso  

  public static java.lang.String formatNumber(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 1578
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tPhoneNumberUtil cannot be resolved to a type\n\tPhoneNumberUtil cannot be resolved\n\tPhoneNumber cannot be resolved to a type\n\tPhoneNumber cannot be resolved to a variable\n\tPhoneNumberUtil cannot be resolved to a variable\n\tPhoneNumber cannot be resolved to a variable\n\tPhoneNumberUtil cannot be resolved to a variable\n\tNumberParseException cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
                   Name  Flags
      phoneNumber        
      defaultCountryIso  

  public static java.lang.String formatNumber(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1636
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tPhoneNumberUtil cannot be resolved to a type\n\tPhoneNumberUtil cannot be resolved\n\tPhoneNumber cannot be resolved to a type\n\tNumberParseException cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
                   Name  Flags
      phoneNumber        
      phoneNumberE164    
      defaultCountryIso  

  public static java.lang.String normalizeNumber(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=1
        start local 0 // java.lang.String phoneNumber
         0: .line 1666
            aload 0 /* phoneNumber */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifeq 2
         1: .line 1667
            ldc ""
            areturn
         2: .line 1670
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         3: .line 1671
            aload 0 /* phoneNumber */
            invokevirtual java.lang.String.length:()I
            istore 2 /* len */
        start local 2 // int len
         4: .line 1672
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 18
         6: .line 1673
      StackMap locals: java.lang.StringBuilder int int
      StackMap stack:
            aload 0 /* phoneNumber */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         7: .line 1675
            iload 4 /* c */
            bipush 10
            invokestatic java.lang.Character.digit:(CI)I
            istore 5 /* digit */
        start local 5 // int digit
         8: .line 1676
            iload 5 /* digit */
            iconst_m1
            if_icmpeq 11
         9: .line 1677
            aload 1 /* sb */
            iload 5 /* digit */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        10: .line 1678
            goto 17
      StackMap locals: int int
      StackMap stack:
        11: aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            ifne 14
            iload 4 /* c */
            bipush 43
            if_icmpne 14
        12: .line 1679
            aload 1 /* sb */
            iload 4 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        13: .line 1680
            goto 17
      StackMap locals:
      StackMap stack:
        14: iload 4 /* c */
            bipush 97
            if_icmplt 15
            iload 4 /* c */
            bipush 122
            if_icmple 16
      StackMap locals:
      StackMap stack:
        15: iload 4 /* c */
            bipush 65
            if_icmplt 17
            iload 4 /* c */
            bipush 90
            if_icmpgt 17
        16: .line 1681
      StackMap locals:
      StackMap stack:
            aload 0 /* phoneNumber */
            invokestatic android.telephony.PhoneNumberUtils.convertKeypadLettersToDigits:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic android.telephony.PhoneNumberUtils.normalizeNumber:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 5 // int digit
        end local 4 // char c
        17: .line 1672
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 3 /* i */
            iload 2 /* len */
            if_icmplt 6
        end local 3 // int i
        19: .line 1684
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int len
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.lang.String phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   20     0  phoneNumber  Ljava/lang/String;
            3   20     1           sb  Ljava/lang/StringBuilder;
            4   20     2          len  I
            5   19     3            i  I
            7   17     4            c  C
            8   17     5        digit  I
    MethodParameters:
             Name  Flags
      phoneNumber  

  public static java.lang.String replaceUnicodeDigits(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=1
        start local 0 // java.lang.String number
         0: .line 1694
            new java.lang.StringBuilder
            dup
            aload 0 /* number */
            invokevirtual java.lang.String.length:()I
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 1 /* normalizedDigits */
        start local 1 // java.lang.StringBuilder normalizedDigits
         1: .line 1695
            aload 0 /* number */
            invokevirtual java.lang.String.toCharArray:()[C
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 9
      StackMap locals: java.lang.String java.lang.StringBuilder top int int char[]
      StackMap stack:
         2: aload 5
            iload 3
            caload
            istore 2 /* c */
        start local 2 // char c
         3: .line 1696
            iload 2 /* c */
            bipush 10
            invokestatic java.lang.Character.digit:(CI)I
            istore 6 /* digit */
        start local 6 // int digit
         4: .line 1697
            iload 6 /* digit */
            iconst_m1
            if_icmpeq 7
         5: .line 1698
            aload 1 /* normalizedDigits */
            iload 6 /* digit */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
         6: .line 1699
            goto 8
         7: .line 1700
      StackMap locals: java.lang.String java.lang.StringBuilder int int int char[] int
      StackMap stack:
            aload 1 /* normalizedDigits */
            iload 2 /* c */
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 6 // int digit
        end local 2 // char c
         8: .line 1695
      StackMap locals: java.lang.String java.lang.StringBuilder top int int char[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         9: iload 3
            iload 4
            if_icmplt 2
        10: .line 1703
            aload 1 /* normalizedDigits */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder normalizedDigits
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   11     0            number  Ljava/lang/String;
            1   11     1  normalizedDigits  Ljava/lang/StringBuilder;
            3    8     2                 c  C
            4    8     6             digit  I
    MethodParameters:
        Name  Flags
      number  

  public static boolean isEmergencyNumber(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String number
         0: .line 1734
            invokestatic android.telephony.PhoneNumberUtils.getDefaultVoiceSubId:()I
            aload 0 /* number */
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumber:(ILjava/lang/String;)Z
            ireturn
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  number  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      number  

  public static boolean isEmergencyNumber(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int subId
        start local 1 // java.lang.String number
         0: .line 1750
            iload 0 /* subId */
            aload 1 /* number */
            iconst_1
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumberInternal:(ILjava/lang/String;Z)Z
            ireturn
        end local 1 // java.lang.String number
        end local 0 // int subId
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   subId  I
            0    1     1  number  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      subId   
      number  

  public static boolean isPotentialEmergencyNumber(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String number
         0: .line 1774
            invokestatic android.telephony.PhoneNumberUtils.getDefaultVoiceSubId:()I
            aload 0 /* number */
            invokestatic android.telephony.PhoneNumberUtils.isPotentialEmergencyNumber:(ILjava/lang/String;)Z
            ireturn
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  number  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      number  

  public static boolean isPotentialEmergencyNumber(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int subId
        start local 1 // java.lang.String number
         0: .line 1800
            iload 0 /* subId */
            aload 1 /* number */
            iconst_0
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumberInternal:(ILjava/lang/String;Z)Z
            ireturn
        end local 1 // java.lang.String number
        end local 0 // int subId
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   subId  I
            0    1     1  number  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      subId   
      number  

  private static boolean isEmergencyNumberInternal(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String number
        start local 1 // boolean useExactMatch
         0: .line 1823
            invokestatic android.telephony.PhoneNumberUtils.getDefaultVoiceSubId:()I
            aload 0 /* number */
            iload 1 /* useExactMatch */
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumberInternal:(ILjava/lang/String;Z)Z
            ireturn
        end local 1 // boolean useExactMatch
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0         number  Ljava/lang/String;
            0    1     1  useExactMatch  Z
    MethodParameters:
               Name  Flags
      number         
      useExactMatch  

  private static boolean isEmergencyNumberInternal(int, java.lang.String, boolean);
    descriptor: (ILjava/lang/String;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // int subId
        start local 1 // java.lang.String number
        start local 2 // boolean useExactMatch
         0: .line 1848
            iload 0 /* subId */
            aload 1 /* number */
            aconst_null
            iload 2 /* useExactMatch */
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumberInternal:(ILjava/lang/String;Ljava/lang/String;Z)Z
            ireturn
        end local 2 // boolean useExactMatch
        end local 1 // java.lang.String number
        end local 0 // int subId
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0          subId  I
            0    1     1         number  Ljava/lang/String;
            0    1     2  useExactMatch  Z
    MethodParameters:
               Name  Flags
      subId          
      number         
      useExactMatch  

  public static boolean isEmergencyNumber(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String number
        start local 1 // java.lang.String defaultCountryIso
         0: .line 1862
            invokestatic android.telephony.PhoneNumberUtils.getDefaultVoiceSubId:()I
            aload 0 /* number */
            aload 1 /* defaultCountryIso */
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumber:(ILjava/lang/String;Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String defaultCountryIso
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0             number  Ljava/lang/String;
            0    1     1  defaultCountryIso  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      number             
      defaultCountryIso  

  public static boolean isEmergencyNumber(int, java.lang.String, java.lang.String);
    descriptor: (ILjava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // int subId
        start local 1 // java.lang.String number
        start local 2 // java.lang.String defaultCountryIso
         0: .line 1876
            iload 0 /* subId */
            aload 1 /* number */
         1: .line 1877
            aload 2 /* defaultCountryIso */
         2: .line 1878
            iconst_1
         3: .line 1876
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumberInternal:(ILjava/lang/String;Ljava/lang/String;Z)Z
            ireturn
        end local 2 // java.lang.String defaultCountryIso
        end local 1 // java.lang.String number
        end local 0 // int subId
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0              subId  I
            0    4     1             number  Ljava/lang/String;
            0    4     2  defaultCountryIso  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      subId              
      number             
      defaultCountryIso  

  public static boolean isPotentialEmergencyNumber(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.String number
        start local 1 // java.lang.String defaultCountryIso
         0: .line 1903
            invokestatic android.telephony.PhoneNumberUtils.getDefaultVoiceSubId:()I
            aload 0 /* number */
            aload 1 /* defaultCountryIso */
            invokestatic android.telephony.PhoneNumberUtils.isPotentialEmergencyNumber:(ILjava/lang/String;Ljava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String defaultCountryIso
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0             number  Ljava/lang/String;
            0    1     1  defaultCountryIso  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      number             
      defaultCountryIso  

  public static boolean isPotentialEmergencyNumber(int, java.lang.String, java.lang.String);
    descriptor: (ILjava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // int subId
        start local 1 // java.lang.String number
        start local 2 // java.lang.String defaultCountryIso
         0: .line 1929
            iload 0 /* subId */
            aload 1 /* number */
         1: .line 1930
            aload 2 /* defaultCountryIso */
         2: .line 1931
            iconst_0
         3: .line 1929
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumberInternal:(ILjava/lang/String;Ljava/lang/String;Z)Z
            ireturn
        end local 2 // java.lang.String defaultCountryIso
        end local 1 // java.lang.String number
        end local 0 // int subId
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0              subId  I
            0    4     1             number  Ljava/lang/String;
            0    4     2  defaultCountryIso  Ljava/lang/String;
    MethodParameters:
                   Name  Flags
      subId              
      number             
      defaultCountryIso  

  private static boolean isEmergencyNumberInternal(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.lang.String number
        start local 1 // java.lang.String defaultCountryIso
        start local 2 // boolean useExactMatch
         0: .line 1951
            invokestatic android.telephony.PhoneNumberUtils.getDefaultVoiceSubId:()I
            aload 0 /* number */
            aload 1 /* defaultCountryIso */
         1: .line 1952
            iload 2 /* useExactMatch */
         2: .line 1951
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumberInternal:(ILjava/lang/String;Ljava/lang/String;Z)Z
            ireturn
        end local 2 // boolean useExactMatch
        end local 1 // java.lang.String defaultCountryIso
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0             number  Ljava/lang/String;
            0    3     1  defaultCountryIso  Ljava/lang/String;
            0    3     2      useExactMatch  Z
    MethodParameters:
                   Name  Flags
      number             
      defaultCountryIso  
      useExactMatch      

  private static boolean isEmergencyNumberInternal(int, java.lang.String, java.lang.String, boolean);
    descriptor: (ILjava/lang/String;Ljava/lang/String;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=4
         0: .line 2051
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tShortNumberInfo cannot be resolved to a type\n\tShortNumberInfo cannot be resolved\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
                   Name  Flags
      subId              
      number             
      defaultCountryIso  
      useExactMatch      

  public static boolean isLocalEmergencyNumber(android.content.Context, java.lang.String);
    descriptor: (Landroid/content/Context;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.content.Context context
        start local 1 // java.lang.String number
         0: .line 2071
            aload 0 /* context */
            invokestatic android.telephony.PhoneNumberUtils.getDefaultVoiceSubId:()I
            aload 1 /* number */
            invokestatic android.telephony.PhoneNumberUtils.isLocalEmergencyNumber:(Landroid/content/Context;ILjava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String number
        end local 0 // android.content.Context context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Landroid/content/Context;
            0    1     1   number  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      context  
      number   

  public static boolean isLocalEmergencyNumber(android.content.Context, int, java.lang.String);
    descriptor: (Landroid/content/Context;ILjava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // android.content.Context context
        start local 1 // int subId
        start local 2 // java.lang.String number
         0: .line 2085
            iload 1 /* subId */
            aload 2 /* number */
         1: .line 2086
            aload 0 /* context */
         2: .line 2087
            iconst_1
         3: .line 2085
            invokestatic android.telephony.PhoneNumberUtils.isLocalEmergencyNumberInternal:(ILjava/lang/String;Landroid/content/Context;Z)Z
            ireturn
        end local 2 // java.lang.String number
        end local 1 // int subId
        end local 0 // android.content.Context context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  context  Landroid/content/Context;
            0    4     1    subId  I
            0    4     2   number  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      context  
      subId    
      number   

  public static boolean isPotentialLocalEmergencyNumber(android.content.Context, java.lang.String);
    descriptor: (Landroid/content/Context;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.content.Context context
        start local 1 // java.lang.String number
         0: .line 2113
            aload 0 /* context */
            invokestatic android.telephony.PhoneNumberUtils.getDefaultVoiceSubId:()I
            aload 1 /* number */
            invokestatic android.telephony.PhoneNumberUtils.isPotentialLocalEmergencyNumber:(Landroid/content/Context;ILjava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String number
        end local 0 // android.content.Context context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  context  Landroid/content/Context;
            0    1     1   number  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      context  
      number   

  public static boolean isPotentialLocalEmergencyNumber(android.content.Context, int, java.lang.String);
    descriptor: (Landroid/content/Context;ILjava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // android.content.Context context
        start local 1 // int subId
        start local 2 // java.lang.String number
         0: .line 2140
            iload 1 /* subId */
            aload 2 /* number */
         1: .line 2141
            aload 0 /* context */
         2: .line 2142
            iconst_0
         3: .line 2140
            invokestatic android.telephony.PhoneNumberUtils.isLocalEmergencyNumberInternal:(ILjava/lang/String;Landroid/content/Context;Z)Z
            ireturn
        end local 2 // java.lang.String number
        end local 1 // int subId
        end local 0 // android.content.Context context
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  context  Landroid/content/Context;
            0    4     1    subId  I
            0    4     2   number  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      context  
      subId    
      number   

  private static boolean isLocalEmergencyNumberInternal(java.lang.String, android.content.Context, boolean);
    descriptor: (Ljava/lang/String;Landroid/content/Context;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // java.lang.String number
        start local 1 // android.content.Context context
        start local 2 // boolean useExactMatch
         0: .line 2166
            invokestatic android.telephony.PhoneNumberUtils.getDefaultVoiceSubId:()I
            aload 0 /* number */
            aload 1 /* context */
         1: .line 2167
            iload 2 /* useExactMatch */
         2: .line 2166
            invokestatic android.telephony.PhoneNumberUtils.isLocalEmergencyNumberInternal:(ILjava/lang/String;Landroid/content/Context;Z)Z
            ireturn
        end local 2 // boolean useExactMatch
        end local 1 // android.content.Context context
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0         number  Ljava/lang/String;
            0    3     1        context  Landroid/content/Context;
            0    3     2  useExactMatch  Z
    MethodParameters:
               Name  Flags
      number         
      context        
      useExactMatch  

  private static boolean isLocalEmergencyNumberInternal(int, java.lang.String, android.content.Context, boolean);
    descriptor: (ILjava/lang/String;Landroid/content/Context;Z)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // int subId
        start local 1 // java.lang.String number
        start local 2 // android.content.Context context
        start local 3 // boolean useExactMatch
         0: .line 2191
            aload 2 /* context */
         1: .line 2192
            ldc "country_detector"
         2: .line 2191
            invokevirtual android.content.Context.getSystemService:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast android.location.CountryDetector
            astore 5 /* detector */
        start local 5 // android.location.CountryDetector detector
         3: .line 2193
            aload 5 /* detector */
            ifnull 6
            aload 5 /* detector */
            invokevirtual android.location.CountryDetector.detectCountry:()Landroid/location/Country;
            ifnull 6
         4: .line 2194
            aload 5 /* detector */
            invokevirtual android.location.CountryDetector.detectCountry:()Landroid/location/Country;
            invokevirtual android.location.Country.getCountryIso:()Ljava/lang/String;
            astore 4 /* countryIso */
        start local 4 // java.lang.String countryIso
         5: .line 2195
            goto 11
        end local 4 // java.lang.String countryIso
         6: .line 2196
      StackMap locals: int java.lang.String android.content.Context int top android.location.CountryDetector
      StackMap stack:
            aload 2 /* context */
            invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
            invokevirtual android.content.res.Resources.getConfiguration:()Landroid/content/res/Configuration;
            getfield android.content.res.Configuration.locale:Ljava/util/Locale;
            astore 6 /* locale */
        start local 6 // java.util.Locale locale
         7: .line 2197
            aload 6 /* locale */
            invokevirtual java.util.Locale.getCountry:()Ljava/lang/String;
            astore 4 /* countryIso */
        start local 4 // java.lang.String countryIso
         8: .line 2198
            ldc "PhoneNumberUtils"
            new java.lang.StringBuilder
            dup
            ldc "No CountryDetector; falling back to countryIso based on locale: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         9: .line 2199
            aload 4 /* countryIso */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        10: .line 2198
            invokestatic android.telephony.Rlog.w:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        end local 6 // java.util.Locale locale
        11: .line 2201
      StackMap locals: int java.lang.String android.content.Context int java.lang.String android.location.CountryDetector
      StackMap stack:
            iload 0 /* subId */
            aload 1 /* number */
            aload 4 /* countryIso */
            iload 3 /* useExactMatch */
            invokestatic android.telephony.PhoneNumberUtils.isEmergencyNumberInternal:(ILjava/lang/String;Ljava/lang/String;Z)Z
            ireturn
        end local 5 // android.location.CountryDetector detector
        end local 4 // java.lang.String countryIso
        end local 3 // boolean useExactMatch
        end local 2 // android.content.Context context
        end local 1 // java.lang.String number
        end local 0 // int subId
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     0          subId  I
            0   12     1         number  Ljava/lang/String;
            0   12     2        context  Landroid/content/Context;
            0   12     3  useExactMatch  Z
            5    6     4     countryIso  Ljava/lang/String;
            8   12     4     countryIso  Ljava/lang/String;
            3   12     5       detector  Landroid/location/CountryDetector;
            7   11     6         locale  Ljava/util/Locale;
    MethodParameters:
               Name  Flags
      subId          
      number         
      context        
      useExactMatch  

  public static boolean isVoiceMailNumber(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String number
         0: .line 2215
            invokestatic android.telephony.SubscriptionManager.getDefaultSubscriptionId:()I
            aload 0 /* number */
            invokestatic android.telephony.PhoneNumberUtils.isVoiceMailNumber:(ILjava/lang/String;)Z
            ireturn
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  number  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      number  

  public static boolean isVoiceMailNumber(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // int subId
        start local 1 // java.lang.String number
         0: .line 2231
            aconst_null
            iload 0 /* subId */
            aload 1 /* number */
            invokestatic android.telephony.PhoneNumberUtils.isVoiceMailNumber:(Landroid/content/Context;ILjava/lang/String;)Z
            ireturn
        end local 1 // java.lang.String number
        end local 0 // int subId
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   subId  I
            0    1     1  number  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      subId   
      number  

  public static boolean isVoiceMailNumber(android.content.Context, int, java.lang.String);
    descriptor: (Landroid/content/Context;ILjava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=8, args_size=3
        start local 0 // android.content.Context context
        start local 1 // int subId
        start local 2 // java.lang.String number
         0: .line 2251
            aload 0 /* context */
            ifnonnull 3
         1: .line 2252
            invokestatic android.telephony.TelephonyManager.getDefault:()Landroid/telephony/TelephonyManager;
            astore 5 /* tm */
        start local 5 // android.telephony.TelephonyManager tm
         2: .line 2254
            goto 4
        end local 5 // android.telephony.TelephonyManager tm
         3: .line 2255
      StackMap locals:
      StackMap stack:
            aload 0 /* context */
            invokestatic android.telephony.TelephonyManager.from:(Landroid/content/Context;)Landroid/telephony/TelephonyManager;
            astore 5 /* tm */
        start local 5 // android.telephony.TelephonyManager tm
         4: .line 2258
      StackMap locals: android.content.Context int java.lang.String top top android.telephony.TelephonyManager
      StackMap stack:
            aload 5 /* tm */
            iload 1 /* subId */
            invokevirtual android.telephony.TelephonyManager.getVoiceMailNumber:(I)Ljava/lang/String;
            astore 3 /* vmNumber */
        start local 3 // java.lang.String vmNumber
         5: .line 2259
            aload 5 /* tm */
            iload 1 /* subId */
            invokevirtual android.telephony.TelephonyManager.getLine1Number:(I)Ljava/lang/String;
            astore 4 /* mdn */
        end local 5 // android.telephony.TelephonyManager tm
        start local 4 // java.lang.String mdn
         6: .line 2262
            goto 9
        end local 4 // java.lang.String mdn
        end local 3 // java.lang.String vmNumber
      StackMap locals: android.content.Context int java.lang.String
      StackMap stack: java.lang.SecurityException
         7: pop
         8: .line 2264
            iconst_0
            ireturn
        start local 3 // java.lang.String vmNumber
        start local 4 // java.lang.String mdn
         9: .line 2268
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 2 /* number */
            invokestatic android.telephony.PhoneNumberUtils.extractNetworkPortionAlt:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* number */
        10: .line 2269
            aload 2 /* number */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifeq 12
        11: .line 2271
            iconst_0
            ireturn
        12: .line 2275
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* compareWithMdn */
        start local 5 // boolean compareWithMdn
        13: .line 2276
            aload 0 /* context */
            ifnull 20
        14: .line 2278
            aload 0 /* context */
            ldc "carrier_config"
            invokevirtual android.content.Context.getSystemService:(Ljava/lang/String;)Ljava/lang/Object;
        15: .line 2277
            checkcast android.telephony.CarrierConfigManager
            astore 6 /* configManager */
        start local 6 // android.telephony.CarrierConfigManager configManager
        16: .line 2279
            aload 6 /* configManager */
            ifnull 20
        17: .line 2280
            aload 6 /* configManager */
            iload 1 /* subId */
            invokevirtual android.telephony.CarrierConfigManager.getConfigForSubId:(I)Landroid/os/PersistableBundle;
            astore 7 /* b */
        start local 7 // android.os.PersistableBundle b
        18: .line 2281
            aload 7 /* b */
            ifnull 20
        19: .line 2282
            aload 7 /* b */
            ldc "mdn_is_additional_voicemail_number_bool"
            invokevirtual android.os.PersistableBundle.getBoolean:(Ljava/lang/String;)Z
            istore 5 /* compareWithMdn */
        end local 7 // android.os.PersistableBundle b
        end local 6 // android.telephony.CarrierConfigManager configManager
        20: .line 2289
      StackMap locals: int
      StackMap stack:
            iload 5 /* compareWithMdn */
            ifeq 23
        21: .line 2291
            aload 2 /* number */
            aload 3 /* vmNumber */
            invokestatic android.telephony.PhoneNumberUtils.compare:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 22
            aload 2 /* number */
            aload 4 /* mdn */
            invokestatic android.telephony.PhoneNumberUtils.compare:(Ljava/lang/String;Ljava/lang/String;)Z
            ifne 22
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
        22: iconst_1
            ireturn
        23: .line 2294
      StackMap locals:
      StackMap stack:
            aload 2 /* number */
            aload 3 /* vmNumber */
            invokestatic android.telephony.PhoneNumberUtils.compare:(Ljava/lang/String;Ljava/lang/String;)Z
            ireturn
        end local 5 // boolean compareWithMdn
        end local 4 // java.lang.String mdn
        end local 3 // java.lang.String vmNumber
        end local 2 // java.lang.String number
        end local 1 // int subId
        end local 0 // android.content.Context context
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   24     0         context  Landroid/content/Context;
            0   24     1           subId  I
            0   24     2          number  Ljava/lang/String;
            5    7     3        vmNumber  Ljava/lang/String;
            9   24     3        vmNumber  Ljava/lang/String;
            6    7     4             mdn  Ljava/lang/String;
            9   24     4             mdn  Ljava/lang/String;
            2    3     5              tm  Landroid/telephony/TelephonyManager;
            4    6     5              tm  Landroid/telephony/TelephonyManager;
           13   24     5  compareWithMdn  Z
           16   20     6   configManager  Landroid/telephony/CarrierConfigManager;
           18   20     7               b  Landroid/os/PersistableBundle;
      Exception table:
        from    to  target  type
           0     6       7  Class java.lang.SecurityException
    MethodParameters:
         Name  Flags
      context  
      subId    
      number   

  public static java.lang.String convertKeypadLettersToDigits(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // java.lang.String input
         0: .line 2309
            aload 0 /* input */
            ifnonnull 2
         1: .line 2310
            aload 0 /* input */
            areturn
         2: .line 2312
      StackMap locals:
      StackMap stack:
            aload 0 /* input */
            invokevirtual java.lang.String.length:()I
            istore 1 /* len */
        start local 1 // int len
         3: .line 2313
            iload 1 /* len */
            ifne 5
         4: .line 2314
            aload 0 /* input */
            areturn
         5: .line 2317
      StackMap locals: int
      StackMap stack:
            aload 0 /* input */
            invokevirtual java.lang.String.toCharArray:()[C
            astore 2 /* out */
        start local 2 // char[] out
         6: .line 2319
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         7: goto 11
         8: .line 2320
      StackMap locals: char[] int
      StackMap stack:
            aload 2 /* out */
            iload 3 /* i */
            caload
            istore 4 /* c */
        start local 4 // char c
         9: .line 2322
            aload 2 /* out */
            iload 3 /* i */
            getstatic android.telephony.PhoneNumberUtils.KEYPAD_MAP:Landroid/util/SparseIntArray;
            iload 4 /* c */
            iload 4 /* c */
            invokevirtual android.util.SparseIntArray.get:(II)I
            i2c
            castore
        end local 4 // char c
        10: .line 2319
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 3 /* i */
            iload 1 /* len */
            if_icmplt 8
        end local 3 // int i
        12: .line 2325
            new java.lang.String
            dup
            aload 2 /* out */
            invokespecial java.lang.String.<init>:([C)V
            areturn
        end local 2 // char[] out
        end local 1 // int len
        end local 0 // java.lang.String input
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   13     0  input  Ljava/lang/String;
            3   13     1    len  I
            6   13     2    out  [C
            7   12     3      i  I
            9   10     4      c  C
    MethodParameters:
       Name  Flags
      input  

  public static java.lang.String cdmaCheckAndProcessPlusCode(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.String dialStr
         0: .line 2394
            aload 0 /* dialStr */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 10
         1: .line 2395
            aload 0 /* dialStr */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic android.telephony.PhoneNumberUtils.isReallyDialable:(C)Z
            ifeq 10
         2: .line 2396
            aload 0 /* dialStr */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(Ljava/lang/String;)Z
            ifeq 10
         3: .line 2397
            invokestatic android.telephony.TelephonyManager.getDefault:()Landroid/telephony/TelephonyManager;
            invokevirtual android.telephony.TelephonyManager.getNetworkCountryIso:()Ljava/lang/String;
            astore 1 /* currIso */
        start local 1 // java.lang.String currIso
         4: .line 2398
            invokestatic android.telephony.TelephonyManager.getDefault:()Landroid/telephony/TelephonyManager;
            invokevirtual android.telephony.TelephonyManager.getSimCountryIso:()Ljava/lang/String;
            astore 2 /* defaultIso */
        start local 2 // java.lang.String defaultIso
         5: .line 2399
            aload 1 /* currIso */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 10
            aload 2 /* defaultIso */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 10
         6: .line 2400
            aload 0 /* dialStr */
         7: .line 2401
            aload 1 /* currIso */
            invokestatic android.telephony.PhoneNumberUtils.getFormatTypeFromCountryCode:(Ljava/lang/String;)I
         8: .line 2402
            aload 2 /* defaultIso */
            invokestatic android.telephony.PhoneNumberUtils.getFormatTypeFromCountryCode:(Ljava/lang/String;)I
         9: .line 2400
            invokestatic android.telephony.PhoneNumberUtils.cdmaCheckAndProcessPlusCodeByNumberFormat:(Ljava/lang/String;II)Ljava/lang/String;
            areturn
        end local 2 // java.lang.String defaultIso
        end local 1 // java.lang.String currIso
        10: .line 2406
      StackMap locals:
      StackMap stack:
            aload 0 /* dialStr */
            areturn
        end local 0 // java.lang.String dialStr
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0     dialStr  Ljava/lang/String;
            4   10     1     currIso  Ljava/lang/String;
            5   10     2  defaultIso  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      dialStr  

  public static java.lang.String cdmaCheckAndProcessPlusCodeForSms(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.String dialStr
         0: .line 2418
            aload 0 /* dialStr */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 6
         1: .line 2419
            aload 0 /* dialStr */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic android.telephony.PhoneNumberUtils.isReallyDialable:(C)Z
            ifeq 6
            aload 0 /* dialStr */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(Ljava/lang/String;)Z
            ifeq 6
         2: .line 2420
            invokestatic android.telephony.TelephonyManager.getDefault:()Landroid/telephony/TelephonyManager;
            invokevirtual android.telephony.TelephonyManager.getSimCountryIso:()Ljava/lang/String;
            astore 1 /* defaultIso */
        start local 1 // java.lang.String defaultIso
         3: .line 2421
            aload 1 /* defaultIso */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 6
         4: .line 2422
            aload 1 /* defaultIso */
            invokestatic android.telephony.PhoneNumberUtils.getFormatTypeFromCountryCode:(Ljava/lang/String;)I
            istore 2 /* format */
        start local 2 // int format
         5: .line 2423
            aload 0 /* dialStr */
            iload 2 /* format */
            iload 2 /* format */
            invokestatic android.telephony.PhoneNumberUtils.cdmaCheckAndProcessPlusCodeByNumberFormat:(Ljava/lang/String;II)Ljava/lang/String;
            areturn
        end local 2 // int format
        end local 1 // java.lang.String defaultIso
         6: .line 2427
      StackMap locals:
      StackMap stack:
            aload 0 /* dialStr */
            areturn
        end local 0 // java.lang.String dialStr
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0     dialStr  Ljava/lang/String;
            3    6     1  defaultIso  Ljava/lang/String;
            5    6     2      format  I
    MethodParameters:
         Name  Flags
      dialStr  

  public static java.lang.String cdmaCheckAndProcessPlusCodeByNumberFormat(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=9, args_size=3
        start local 0 // java.lang.String dialStr
        start local 1 // int currFormat
        start local 2 // int defaultFormat
         0: .line 2459
            aload 0 /* dialStr */
            astore 3 /* retStr */
        start local 3 // java.lang.String retStr
         1: .line 2461
            iload 1 /* currFormat */
            iload 2 /* defaultFormat */
            if_icmpne 2
            iload 1 /* currFormat */
            iconst_1
            if_icmpne 2
            iconst_1
            goto 3
      StackMap locals: java.lang.String
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 4 /* useNanp */
        start local 4 // boolean useNanp
         4: .line 2464
            aload 0 /* dialStr */
            ifnull 35
         5: .line 2465
            aload 0 /* dialStr */
            ldc "+"
            invokevirtual java.lang.String.lastIndexOf:(Ljava/lang/String;)I
            iconst_m1
            if_icmpeq 35
         6: .line 2468
            aconst_null
            astore 5 /* postDialStr */
        start local 5 // java.lang.String postDialStr
         7: .line 2469
            aload 0 /* dialStr */
            astore 6 /* tempDialStr */
        start local 6 // java.lang.String tempDialStr
         8: .line 2472
            aconst_null
            astore 3 /* retStr */
         9: .line 2481
      StackMap locals: int java.lang.String java.lang.String
      StackMap stack:
            iload 4 /* useNanp */
            ifeq 12
        10: .line 2482
            aload 6 /* tempDialStr */
            invokestatic android.telephony.PhoneNumberUtils.extractNetworkPortion:(Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* networkDialStr */
        start local 7 // java.lang.String networkDialStr
        11: .line 2483
            goto 13
        end local 7 // java.lang.String networkDialStr
        12: .line 2484
      StackMap locals:
      StackMap stack:
            aload 6 /* tempDialStr */
            invokestatic android.telephony.PhoneNumberUtils.extractNetworkPortionAlt:(Ljava/lang/String;)Ljava/lang/String;
            astore 7 /* networkDialStr */
        start local 7 // java.lang.String networkDialStr
        13: .line 2488
      StackMap locals: java.lang.String
      StackMap stack:
            aload 7 /* networkDialStr */
            iload 4 /* useNanp */
            invokestatic android.telephony.PhoneNumberUtils.processPlusCode:(Ljava/lang/String;Z)Ljava/lang/String;
            astore 7 /* networkDialStr */
        14: .line 2491
            aload 7 /* networkDialStr */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 20
        15: .line 2492
            aload 3 /* retStr */
            ifnonnull 18
        16: .line 2493
            aload 7 /* networkDialStr */
            astore 3 /* retStr */
        17: .line 2494
            goto 22
        18: .line 2495
      StackMap locals:
      StackMap stack:
            aload 3 /* retStr */
            aload 7 /* networkDialStr */
            invokevirtual java.lang.String.concat:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* retStr */
        19: .line 2497
            goto 22
        20: .line 2501
      StackMap locals:
      StackMap stack:
            ldc "checkAndProcessPlusCode: null newDialStr"
            aload 7 /* networkDialStr */
            invokestatic android.telephony.Rlog.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        21: .line 2502
            aload 0 /* dialStr */
            areturn
        22: .line 2504
      StackMap locals:
      StackMap stack:
            aload 6 /* tempDialStr */
            invokestatic android.telephony.PhoneNumberUtils.extractPostDialPortion:(Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* postDialStr */
        23: .line 2505
            aload 5 /* postDialStr */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 34
        24: .line 2506
            aload 5 /* postDialStr */
            invokestatic android.telephony.PhoneNumberUtils.findDialableIndexFromPostDialStr:(Ljava/lang/String;)I
            istore 8 /* dialableIndex */
        start local 8 // int dialableIndex
        25: .line 2509
            iload 8 /* dialableIndex */
            iconst_1
            if_icmplt 31
        26: .line 2510
            iload 8 /* dialableIndex */
        27: .line 2511
            aload 3 /* retStr */
            aload 5 /* postDialStr */
        28: .line 2510
            invokestatic android.telephony.PhoneNumberUtils.appendPwCharBackToOrigDialStr:(ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* retStr */
        29: .line 2513
            aload 5 /* postDialStr */
            iload 8 /* dialableIndex */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 6 /* tempDialStr */
        30: .line 2514
            goto 34
        31: .line 2518
      StackMap locals: int
      StackMap stack:
            iload 8 /* dialableIndex */
            ifge 33
        32: .line 2519
            ldc ""
            astore 5 /* postDialStr */
        33: .line 2521
      StackMap locals:
      StackMap stack:
            ldc "wrong postDialStr="
            aload 5 /* postDialStr */
            invokestatic android.telephony.Rlog.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        end local 8 // int dialableIndex
        end local 7 // java.lang.String networkDialStr
        34: .line 2525
      StackMap locals:
      StackMap stack:
            aload 5 /* postDialStr */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifne 35
            aload 6 /* tempDialStr */
            invokestatic android.text.TextUtils.isEmpty:(Ljava/lang/CharSequence;)Z
            ifeq 9
        end local 6 // java.lang.String tempDialStr
        end local 5 // java.lang.String postDialStr
        35: .line 2527
      StackMap locals:
      StackMap stack:
            aload 3 /* retStr */
            areturn
        end local 4 // boolean useNanp
        end local 3 // java.lang.String retStr
        end local 2 // int defaultFormat
        end local 1 // int currFormat
        end local 0 // java.lang.String dialStr
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   36     0         dialStr  Ljava/lang/String;
            0   36     1      currFormat  I
            0   36     2   defaultFormat  I
            1   36     3          retStr  Ljava/lang/String;
            4   36     4         useNanp  Z
            7   35     5     postDialStr  Ljava/lang/String;
            8   35     6     tempDialStr  Ljava/lang/String;
           11   12     7  networkDialStr  Ljava/lang/String;
           13   34     7  networkDialStr  Ljava/lang/String;
           25   34     8   dialableIndex  I
    MethodParameters:
               Name  Flags
      dialStr        
      currFormat     
      defaultFormat  

  public static java.lang.CharSequence createTtsSpannable(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.CharSequence phoneNumber
         0: .line 2538
            aload 0 /* phoneNumber */
            ifnonnull 2
         1: .line 2539
            aconst_null
            areturn
         2: .line 2541
      StackMap locals:
      StackMap stack:
            invokestatic android.text.Spannable$Factory.getInstance:()Landroid/text/Spannable$Factory;
            aload 0 /* phoneNumber */
            invokevirtual android.text.Spannable$Factory.newSpannable:(Ljava/lang/CharSequence;)Landroid/text/Spannable;
            astore 1 /* spannable */
        start local 1 // android.text.Spannable spannable
         3: .line 2542
            aload 1 /* spannable */
            iconst_0
            aload 1 /* spannable */
            invokeinterface android.text.Spannable.length:()I
            invokestatic android.telephony.PhoneNumberUtils.addTtsSpan:(Landroid/text/Spannable;II)V
         4: .line 2543
            aload 1 /* spannable */
            areturn
        end local 1 // android.text.Spannable spannable
        end local 0 // java.lang.CharSequence phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0  phoneNumber  Ljava/lang/CharSequence;
            3    5     1    spannable  Landroid/text/Spannable;
    MethodParameters:
             Name  Flags
      phoneNumber  

  public static void addTtsSpan(android.text.Spannable, int, int);
    descriptor: (Landroid/text/Spannable;II)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // android.text.Spannable s
        start local 1 // int start
        start local 2 // int endExclusive
         0: .line 2555
            aload 0 /* s */
            aload 0 /* s */
            iload 1 /* start */
            iload 2 /* endExclusive */
            invokeinterface android.text.Spannable.subSequence:(II)Ljava/lang/CharSequence;
            invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
            invokestatic android.telephony.PhoneNumberUtils.createTtsSpan:(Ljava/lang/String;)Landroid/text/style/TtsSpan;
         1: .line 2556
            iload 1 /* start */
         2: .line 2557
            iload 2 /* endExclusive */
         3: .line 2558
            bipush 33
         4: .line 2555
            invokeinterface android.text.Spannable.setSpan:(Ljava/lang/Object;III)V
         5: .line 2559
            return
        end local 2 // int endExclusive
        end local 1 // int start
        end local 0 // android.text.Spannable s
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0             s  Landroid/text/Spannable;
            0    6     1         start  I
            0    6     2  endExclusive  I
    MethodParameters:
              Name  Flags
      s             
      start         
      endExclusive  

  public static java.lang.CharSequence ttsSpanAsPhoneNumber(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.CharSequence phoneNumber
         0: .line 2573
            aload 0 /* phoneNumber */
            invokestatic android.telephony.PhoneNumberUtils.createTtsSpannable:(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
            areturn
        end local 0 // java.lang.CharSequence phoneNumber
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0  phoneNumber  Ljava/lang/CharSequence;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      phoneNumber  

  public static void ttsSpanAsPhoneNumber(android.text.Spannable, int, int);
    descriptor: (Landroid/text/Spannable;II)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.text.Spannable s
        start local 1 // int start
        start local 2 // int end
         0: .line 2590
            aload 0 /* s */
            iload 1 /* start */
            iload 2 /* end */
            invokestatic android.telephony.PhoneNumberUtils.addTtsSpan:(Landroid/text/Spannable;II)V
         1: .line 2591
            return
        end local 2 // int end
        end local 1 // int start
        end local 0 // android.text.Spannable s
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0      s  Landroid/text/Spannable;
            0    2     1  start  I
            0    2     2    end  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
       Name  Flags
      s      
      start  
      end    

  public static android.text.style.TtsSpan createTtsSpan(java.lang.String);
    descriptor: (Ljava/lang/String;)Landroid/text/style/TtsSpan;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 2605
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tPhoneNumberUtil cannot be resolved to a type\n\tPhoneNumberUtil cannot be resolved\n\tPhoneNumber cannot be resolved to a type\n\tNumberParseException cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
                   Name  Flags
      phoneNumberString  

  private static java.lang.String splitAtNonNumerics(java.lang.CharSequence);
    descriptor: (Ljava/lang/CharSequence;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // java.lang.CharSequence number
         0: .line 2633
            new java.lang.StringBuilder
            dup
            aload 0 /* number */
            invokeinterface java.lang.CharSequence.length:()I
            invokespecial java.lang.StringBuilder.<init>:(I)V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 2634
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 8
         3: .line 2635
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* number */
            iload 2 /* i */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic android.telephony.PhoneNumberUtils.is12Key:(C)Z
            ifeq 5
         4: .line 2636
            aload 0 /* number */
            iload 2 /* i */
            invokeinterface java.lang.CharSequence.charAt:(I)C
            invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
            goto 6
         5: .line 2637
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
            ldc " "
         6: .line 2635
      StackMap locals: java.lang.CharSequence java.lang.StringBuilder int
      StackMap stack: java.lang.StringBuilder java.io.Serializable
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
         7: .line 2634
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            aload 0 /* number */
            invokeinterface java.lang.CharSequence.length:()I
            if_icmplt 3
        end local 2 // int i
         9: .line 2642
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            ldc " +"
            ldc " "
            invokevirtual java.lang.String.replaceAll:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.trim:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // java.lang.CharSequence number
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0  number  Ljava/lang/CharSequence;
            1   10     1      sb  Ljava/lang/StringBuilder;
            2    9     2       i  I
    MethodParameters:
        Name  Flags
      number  

  private static java.lang.String getCurrentIdp(boolean);
    descriptor: (Z)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // boolean useNanp
         0: .line 2646
            aconst_null
            astore 1 /* ps */
        start local 1 // java.lang.String ps
         1: .line 2647
            iload 0 /* useNanp */
            ifeq 4
         2: .line 2648
            ldc "011"
            astore 1 /* ps */
         3: .line 2649
            goto 5
         4: .line 2651
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "gsm.operator.idpstring"
            ldc "+"
            invokestatic android.os.SystemProperties.get:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 1 /* ps */
         5: .line 2653
      StackMap locals:
      StackMap stack:
            aload 1 /* ps */
            areturn
        end local 1 // java.lang.String ps
        end local 0 // boolean useNanp
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  useNanp  Z
            1    6     1       ps  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      useNanp  

  private static boolean isTwoToNine(char);
    descriptor: (C)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char c
         0: .line 2657
            iload 0 /* c */
            bipush 50
            if_icmplt 2
            iload 0 /* c */
            bipush 57
            if_icmpgt 2
         1: .line 2658
            iconst_1
            ireturn
         2: .line 2660
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // char c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     c  C
    MethodParameters:
      Name  Flags
      c     

  private static int getFormatTypeFromCountryCode(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String country
         0: .line 2666
            getstatic android.telephony.PhoneNumberUtils.NANP_COUNTRIES:[Ljava/lang/String;
            arraylength
            istore 1 /* length */
        start local 1 // int length
         1: .line 2667
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 6
         3: .line 2668
      StackMap locals: int int
      StackMap stack:
            getstatic android.telephony.PhoneNumberUtils.NANP_COUNTRIES:[Ljava/lang/String;
            iload 2 /* i */
            aaload
            aload 0 /* country */
            invokevirtual java.lang.String.compareToIgnoreCase:(Ljava/lang/String;)I
            ifne 5
         4: .line 2669
            iconst_1
            ireturn
         5: .line 2667
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            iload 1 /* length */
            if_icmplt 3
        end local 2 // int i
         7: .line 2672
            ldc "jp"
            aload 0 /* country */
            invokevirtual java.lang.String.compareToIgnoreCase:(Ljava/lang/String;)I
            ifne 9
         8: .line 2673
            iconst_2
            ireturn
         9: .line 2675
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // int length
        end local 0 // java.lang.String country
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0  country  Ljava/lang/String;
            1   10     1   length  I
            2    7     2        i  I
    MethodParameters:
         Name  Flags
      country  

  public static boolean isNanp(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.lang.String dialStr
         0: .line 2684
            iconst_0
            istore 1 /* retVal */
        start local 1 // boolean retVal
         1: .line 2685
            aload 0 /* dialStr */
            ifnull 15
         2: .line 2686
            aload 0 /* dialStr */
            invokevirtual java.lang.String.length:()I
            bipush 10
            if_icmpne 16
         3: .line 2687
            aload 0 /* dialStr */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic android.telephony.PhoneNumberUtils.isTwoToNine:(C)Z
            ifeq 16
         4: .line 2688
            aload 0 /* dialStr */
            iconst_3
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic android.telephony.PhoneNumberUtils.isTwoToNine:(C)Z
            ifeq 16
         5: .line 2689
            iconst_1
            istore 1 /* retVal */
         6: .line 2690
            iconst_1
            istore 2 /* i */
        start local 2 // int i
         7: goto 13
         8: .line 2691
      StackMap locals: int int
      StackMap stack:
            aload 0 /* dialStr */
            iload 2 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 3 /* c */
        start local 3 // char c
         9: .line 2692
            iload 3 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isISODigit:(C)Z
            ifne 12
        10: .line 2693
            iconst_0
            istore 1 /* retVal */
        11: .line 2694
            goto 16
        end local 3 // char c
        12: .line 2690
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 2 /* i */
            bipush 10
            if_icmplt 8
        end local 2 // int i
        14: .line 2699
            goto 16
        15: .line 2700
      StackMap locals:
      StackMap stack:
            ldc "isNanp: null dialStr passed in"
            aload 0 /* dialStr */
            invokestatic android.telephony.Rlog.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
        16: .line 2702
      StackMap locals:
      StackMap stack:
            iload 1 /* retVal */
            ireturn
        end local 1 // boolean retVal
        end local 0 // java.lang.String dialStr
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   17     0  dialStr  Ljava/lang/String;
            1   17     1   retVal  Z
            7   14     2        i  I
            9   12     3        c  C
    MethodParameters:
         Name  Flags
      dialStr  

  private static boolean isOneNanp(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String dialStr
         0: .line 2709
            iconst_0
            istore 1 /* retVal */
        start local 1 // boolean retVal
         1: .line 2710
            aload 0 /* dialStr */
            ifnull 6
         2: .line 2711
            aload 0 /* dialStr */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 2 /* newDialStr */
        start local 2 // java.lang.String newDialStr
         3: .line 2712
            aload 0 /* dialStr */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 49
            if_icmpne 7
            aload 2 /* newDialStr */
            invokestatic android.telephony.PhoneNumberUtils.isNanp:(Ljava/lang/String;)Z
            ifeq 7
         4: .line 2713
            iconst_1
            istore 1 /* retVal */
        end local 2 // java.lang.String newDialStr
         5: .line 2715
            goto 7
         6: .line 2716
      StackMap locals: int
      StackMap stack:
            ldc "isOneNanp: null dialStr passed in"
            aload 0 /* dialStr */
            invokestatic android.telephony.Rlog.e:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         7: .line 2718
      StackMap locals:
      StackMap stack:
            iload 1 /* retVal */
            ireturn
        end local 1 // boolean retVal
        end local 0 // java.lang.String dialStr
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0     dialStr  Ljava/lang/String;
            1    8     1      retVal  Z
            3    5     2  newDialStr  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      dialStr  

  public static boolean isUriNumber(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String number
         0: .line 2734
            aload 0 /* number */
            ifnull 2
            aload 0 /* number */
            ldc "@"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifne 1
            aload 0 /* number */
            ldc "%40"
            invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0  number  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      number  

  public static java.lang.String getUsernameFromUriNumber(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // java.lang.String number
         0: .line 2750
            aload 0 /* number */
            bipush 64
            invokevirtual java.lang.String.indexOf:(I)I
            istore 1 /* delimiterIndex */
        start local 1 // int delimiterIndex
         1: .line 2751
            iload 1 /* delimiterIndex */
            ifge 3
         2: .line 2752
            aload 0 /* number */
            ldc "%40"
            invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
            istore 1 /* delimiterIndex */
         3: .line 2754
      StackMap locals: int
      StackMap stack:
            iload 1 /* delimiterIndex */
            ifge 8
         4: .line 2755
            ldc "PhoneNumberUtils"
         5: .line 2756
            new java.lang.StringBuilder
            dup
            ldc "getUsernameFromUriNumber: no delimiter found in SIP addr '"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* number */
            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;
         6: .line 2755
            invokestatic android.telephony.Rlog.w:(Ljava/lang/String;Ljava/lang/String;)I
            pop
         7: .line 2757
            aload 0 /* number */
            invokevirtual java.lang.String.length:()I
            istore 1 /* delimiterIndex */
         8: .line 2759
      StackMap locals:
      StackMap stack:
            aload 0 /* number */
            iconst_0
            iload 1 /* delimiterIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            areturn
        end local 1 // int delimiterIndex
        end local 0 // java.lang.String number
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0          number  Ljava/lang/String;
            1    9     1  delimiterIndex  I
    MethodParameters:
        Name  Flags
      number  

  public static android.net.Uri convertSipUriToTelUri(android.net.Uri);
    descriptor: (Landroid/net/Uri;)Landroid/net/Uri;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // android.net.Uri source
         0: .line 2785
            aload 0 /* source */
            invokevirtual android.net.Uri.getScheme:()Ljava/lang/String;
            astore 1 /* scheme */
        start local 1 // java.lang.String scheme
         1: .line 2787
            ldc "sip"
            aload 1 /* scheme */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
         2: .line 2789
            aload 0 /* source */
            areturn
         3: .line 2792
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* source */
            invokevirtual android.net.Uri.getSchemeSpecificPart:()Ljava/lang/String;
            astore 2 /* number */
        start local 2 // java.lang.String number
         4: .line 2793
            aload 2 /* number */
            ldc "[@;:]"
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            astore 3 /* numberParts */
        start local 3 // java.lang.String[] numberParts
         5: .line 2795
            aload 3 /* numberParts */
            arraylength
            ifne 7
         6: .line 2797
            aload 0 /* source */
            areturn
         7: .line 2799
      StackMap locals: java.lang.String java.lang.String[]
      StackMap stack:
            aload 3 /* numberParts */
            iconst_0
            aaload
            astore 2 /* number */
         8: .line 2801
            ldc "tel"
            aload 2 /* number */
            aconst_null
            invokestatic android.net.Uri.fromParts:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/net/Uri;
            areturn
        end local 3 // java.lang.String[] numberParts
        end local 2 // java.lang.String number
        end local 1 // java.lang.String scheme
        end local 0 // android.net.Uri source
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0       source  Landroid/net/Uri;
            1    9     1       scheme  Ljava/lang/String;
            4    9     2       number  Ljava/lang/String;
            5    9     3  numberParts  [Ljava/lang/String;
    MethodParameters:
        Name  Flags
      source  

  private static java.lang.String processPlusCode(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.lang.String networkDialStr
        start local 1 // boolean useNanp
         0: .line 2811
            aload 0 /* networkDialStr */
            astore 2 /* retStr */
        start local 2 // java.lang.String retStr
         1: .line 2817
            aload 0 /* networkDialStr */
            ifnull 9
         2: .line 2818
            aload 0 /* networkDialStr */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            bipush 43
            if_icmpne 9
         3: .line 2819
            aload 0 /* networkDialStr */
            invokevirtual java.lang.String.length:()I
            iconst_1
            if_icmple 9
         4: .line 2820
            aload 0 /* networkDialStr */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 3 /* newStr */
        start local 3 // java.lang.String newStr
         5: .line 2822
            iload 1 /* useNanp */
            ifeq 8
            aload 3 /* newStr */
            invokestatic android.telephony.PhoneNumberUtils.isOneNanp:(Ljava/lang/String;)Z
            ifeq 8
         6: .line 2824
            aload 3 /* newStr */
            astore 2 /* retStr */
         7: .line 2825
            goto 9
         8: .line 2827
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 0 /* networkDialStr */
            ldc "[+]"
            iload 1 /* useNanp */
            invokestatic android.telephony.PhoneNumberUtils.getCurrentIdp:(Z)Ljava/lang/String;
            invokevirtual java.lang.String.replaceFirst:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* retStr */
        end local 3 // java.lang.String newStr
         9: .line 2831
      StackMap locals:
      StackMap stack:
            aload 2 /* retStr */
            areturn
        end local 2 // java.lang.String retStr
        end local 1 // boolean useNanp
        end local 0 // java.lang.String networkDialStr
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0  networkDialStr  Ljava/lang/String;
            0   10     1         useNanp  Z
            1   10     2          retStr  Ljava/lang/String;
            5    9     3          newStr  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      networkDialStr  
      useNanp         

  private static int findDialableIndexFromPostDialStr(java.lang.String);
    descriptor: (Ljava/lang/String;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.lang.String postDialStr
         0: .line 2837
            iconst_0
            istore 1 /* index */
        start local 1 // int index
         1: goto 6
         2: .line 2838
      StackMap locals: int
      StackMap stack:
            aload 0 /* postDialStr */
            iload 1 /* index */
            invokevirtual java.lang.String.charAt:(I)C
            istore 2 /* c */
        start local 2 // char c
         3: .line 2839
            iload 2 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isReallyDialable:(C)Z
            ifeq 5
         4: .line 2840
            iload 1 /* index */
            ireturn
        end local 2 // char c
         5: .line 2837
      StackMap locals:
      StackMap stack:
            iinc 1 /* index */ 1
      StackMap locals:
      StackMap stack:
         6: iload 1 /* index */
            aload 0 /* postDialStr */
            invokevirtual java.lang.String.length:()I
            if_icmplt 2
        end local 1 // int index
         7: .line 2843
            iconst_m1
            ireturn
        end local 0 // java.lang.String postDialStr
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0  postDialStr  Ljava/lang/String;
            1    7     1        index  I
            3    5     2            c  C
    MethodParameters:
             Name  Flags
      postDialStr  

  private static java.lang.String appendPwCharBackToOrigDialStr(int, java.lang.String, java.lang.String);
    descriptor: (ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // int dialableIndex
        start local 1 // java.lang.String origStr
        start local 2 // java.lang.String dialStr
         0: .line 2853
            iload 0 /* dialableIndex */
            iconst_1
            if_icmpne 5
         1: .line 2854
            new java.lang.StringBuilder
            dup
            aload 1 /* origStr */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 4 /* ret */
        start local 4 // java.lang.StringBuilder ret
         2: .line 2855
            aload 4 /* ret */
            aload 2 /* dialStr */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            astore 4 /* ret */
         3: .line 2856
            aload 4 /* ret */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* retStr */
        end local 4 // java.lang.StringBuilder ret
        start local 3 // java.lang.String retStr
         4: .line 2857
            goto 7
        end local 3 // java.lang.String retStr
         5: .line 2860
      StackMap locals:
      StackMap stack:
            aload 2 /* dialStr */
            iconst_0
            iload 0 /* dialableIndex */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* nonDigitStr */
        start local 4 // java.lang.String nonDigitStr
         6: .line 2861
            aload 1 /* origStr */
            aload 4 /* nonDigitStr */
            invokevirtual java.lang.String.concat:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* retStr */
        end local 4 // java.lang.String nonDigitStr
        start local 3 // java.lang.String retStr
         7: .line 2863
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* retStr */
            areturn
        end local 3 // java.lang.String retStr
        end local 2 // java.lang.String dialStr
        end local 1 // java.lang.String origStr
        end local 0 // int dialableIndex
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0  dialableIndex  I
            0    8     1        origStr  Ljava/lang/String;
            0    8     2        dialStr  Ljava/lang/String;
            4    5     3         retStr  Ljava/lang/String;
            7    8     3         retStr  Ljava/lang/String;
            2    4     4            ret  Ljava/lang/StringBuilder;
            6    7     4    nonDigitStr  Ljava/lang/String;
    MethodParameters:
               Name  Flags
      dialableIndex  
      origStr        
      dialStr        

  private static boolean matchIntlPrefix(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.lang.String a
        start local 1 // int len
         0: .line 2884
            iconst_0
            istore 2 /* state */
        start local 2 // int state
         1: .line 2885
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 15
         3: .line 2886
      StackMap locals: int int
      StackMap stack:
            aload 0 /* a */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         4: .line 2888
            iload 2 /* state */
            tableswitch { // 0 - 4
                    0: 5
                    1: 13
                    2: 8
                    3: 13
                    4: 11
              default: 13
          }
         5: .line 2890
      StackMap locals: int
      StackMap stack:
            iload 4 /* c */
            bipush 43
            if_icmpne 6
            iconst_1
            istore 2 /* state */
            goto 14
         6: .line 2891
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            bipush 48
            if_icmpne 7
            iconst_2
            istore 2 /* state */
            goto 14
         7: .line 2892
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 14
            iconst_0
            ireturn
         8: .line 2896
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            bipush 48
            if_icmpne 9
            iconst_3
            istore 2 /* state */
            goto 14
         9: .line 2897
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            bipush 49
            if_icmpne 10
            iconst_4
            istore 2 /* state */
            goto 14
        10: .line 2898
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 14
            iconst_0
            ireturn
        11: .line 2902
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            bipush 49
            if_icmpne 12
            iconst_5
            istore 2 /* state */
            goto 14
        12: .line 2903
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 14
            iconst_0
            ireturn
        13: .line 2907
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 14
            iconst_0
            ireturn
        end local 4 // char c
        14: .line 2885
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 3 /* i */
            iload 1 /* len */
            if_icmplt 3
        end local 3 // int i
        16: .line 2913
            iload 2 /* state */
            iconst_1
            if_icmpeq 17
            iload 2 /* state */
            iconst_3
            if_icmpeq 17
            iload 2 /* state */
            iconst_5
            if_icmpeq 17
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
        17: iconst_1
            ireturn
        end local 2 // int state
        end local 1 // int len
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   18     0      a  Ljava/lang/String;
            0   18     1    len  I
            1   18     2  state  I
            2   16     3      i  I
            4   14     4      c  C
    MethodParameters:
      Name  Flags
      a     
      len   

  private static boolean matchIntlPrefixAndCC(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.lang.String a
        start local 1 // int len
         0: .line 2923
            iconst_0
            istore 2 /* state */
        start local 2 // int state
         1: .line 2924
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 19
         3: .line 2925
      StackMap locals: int int
      StackMap stack:
            aload 0 /* a */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         4: .line 2927
            iload 2 /* state */
            tableswitch { // 0 - 7
                    0: 5
                    1: 13
                    2: 8
                    3: 13
                    4: 11
                    5: 13
                    6: 15
                    7: 15
              default: 17
          }
         5: .line 2929
      StackMap locals: int
      StackMap stack:
            iload 4 /* c */
            bipush 43
            if_icmpne 6
            iconst_1
            istore 2 /* state */
            goto 18
         6: .line 2930
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            bipush 48
            if_icmpne 7
            iconst_2
            istore 2 /* state */
            goto 18
         7: .line 2931
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 18
            iconst_0
            ireturn
         8: .line 2935
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            bipush 48
            if_icmpne 9
            iconst_3
            istore 2 /* state */
            goto 18
         9: .line 2936
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            bipush 49
            if_icmpne 10
            iconst_4
            istore 2 /* state */
            goto 18
        10: .line 2937
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 18
            iconst_0
            ireturn
        11: .line 2941
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            bipush 49
            if_icmpne 12
            iconst_5
            istore 2 /* state */
            goto 18
        12: .line 2942
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 18
            iconst_0
            ireturn
        13: .line 2948
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isISODigit:(C)Z
            ifeq 14
            bipush 6
            istore 2 /* state */
            goto 18
        14: .line 2949
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 18
            iconst_0
            ireturn
        15: .line 2954
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isISODigit:(C)Z
            ifeq 16
            iinc 2 /* state */ 1
            goto 18
        16: .line 2955
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 18
            iconst_0
            ireturn
        17: .line 2959
      StackMap locals:
      StackMap stack:
            iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 18
            iconst_0
            ireturn
        end local 4 // char c
        18: .line 2924
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 3 /* i */
            iload 1 /* len */
            if_icmplt 3
        end local 3 // int i
        20: .line 2963
            iload 2 /* state */
            bipush 6
            if_icmpeq 21
            iload 2 /* state */
            bipush 7
            if_icmpeq 21
            iload 2 /* state */
            bipush 8
            if_icmpeq 21
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
        21: iconst_1
            ireturn
        end local 2 // int state
        end local 1 // int len
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   22     0      a  Ljava/lang/String;
            0   22     1    len  I
            1   22     2  state  I
            2   20     3      i  I
            4   18     4      c  C
    MethodParameters:
      Name  Flags
      a     
      len   

  private static boolean matchTrunkPrefix(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.lang.String a
        start local 1 // int len
         0: .line 2971
            iconst_0
            istore 2 /* found */
        start local 2 // boolean found
         1: .line 2973
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 10
         3: .line 2974
      StackMap locals: int int
      StackMap stack:
            aload 0 /* a */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* c */
        start local 4 // char c
         4: .line 2976
            iload 4 /* c */
            bipush 48
            if_icmpne 7
            iload 2 /* found */
            ifne 7
         5: .line 2977
            iconst_1
            istore 2 /* found */
         6: .line 2978
            goto 9
      StackMap locals: int
      StackMap stack:
         7: iload 4 /* c */
            invokestatic android.telephony.PhoneNumberUtils.isNonSeparator:(C)Z
            ifeq 9
         8: .line 2979
            iconst_0
            ireturn
        end local 4 // char c
         9: .line 2973
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            iload 1 /* len */
            if_icmplt 3
        end local 3 // int i
        11: .line 2983
            iload 2 /* found */
            ireturn
        end local 2 // boolean found
        end local 1 // int len
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0      a  Ljava/lang/String;
            0   12     1    len  I
            1   12     2  found  Z
            2   11     3      i  I
            4    9     4      c  C
    MethodParameters:
      Name  Flags
      a     
      len   

  private static boolean isCountryCallingCode(int);
    descriptor: (I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int countryCallingCodeCandidate
         0: .line 3011
            iload 0 /* countryCallingCodeCandidate */
            ifle 3
            iload 0 /* countryCallingCodeCandidate */
            getstatic android.telephony.PhoneNumberUtils.CCC_LENGTH:I
            if_icmpge 3
         1: .line 3012
            getstatic android.telephony.PhoneNumberUtils.COUNTRY_CALLING_CALL:[Z
            iload 0 /* countryCallingCodeCandidate */
            baload
            ifeq 3
         2: .line 3011
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 0 // int countryCallingCodeCandidate
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0    4     0  countryCallingCodeCandidate  I
    MethodParameters:
                             Name  Flags
      countryCallingCodeCandidate  

  private static int tryGetISODigit(char);
    descriptor: (C)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // char ch
         0: .line 3021
            bipush 48
            iload 0 /* ch */
            if_icmpgt 2
            iload 0 /* ch */
            bipush 57
            if_icmpgt 2
         1: .line 3022
            iload 0 /* ch */
            bipush 48
            isub
            ireturn
         2: .line 3024
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 0 // char ch
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    ch  C
    MethodParameters:
      Name  Flags
      ch    

  private static android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex tryGetCountryCallingCodeAndNewIndex(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)Landroid/telephony/PhoneNumberUtils$CountryCallingCodeAndNewIndex;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // java.lang.String str
        start local 1 // boolean acceptThailandCase
         0: .line 3050
            iconst_0
            istore 2 /* state */
        start local 2 // int state
         1: .line 3051
            iconst_0
            istore 3 /* ccc */
        start local 3 // int ccc
         2: .line 3052
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            istore 4 /* length */
        start local 4 // int length
         3: .line 3053
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         4: goto 43
         5: .line 3054
      StackMap locals: java.lang.String int int int int int
      StackMap stack:
            aload 0 /* str */
            iload 5 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 6 /* ch */
        start local 6 // char ch
         6: .line 3055
            iload 2 /* state */
            tableswitch { // 0 - 9
                    0: 7
                    1: 23
                    2: 16
                    3: 23
                    4: 20
                    5: 23
                    6: 23
                    7: 23
                    8: 35
                    9: 38
              default: 41
          }
         7: .line 3057
      StackMap locals: int
      StackMap stack:
            iload 6 /* ch */
            bipush 43
            if_icmpne 8
            iconst_1
            istore 2 /* state */
            goto 42
         8: .line 3058
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            bipush 48
            if_icmpne 9
            iconst_2
            istore 2 /* state */
            goto 42
         9: .line 3059
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            bipush 49
            if_icmpne 14
        10: .line 3060
            iload 1 /* acceptThailandCase */
            ifeq 13
        11: .line 3061
            bipush 8
            istore 2 /* state */
        12: .line 3062
            goto 42
        13: .line 3063
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        14: .line 3065
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 42
        15: .line 3066
            aconst_null
            areturn
        16: .line 3071
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            bipush 48
            if_icmpne 17
            iconst_3
            istore 2 /* state */
            goto 42
        17: .line 3072
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            bipush 49
            if_icmpne 18
            iconst_4
            istore 2 /* state */
            goto 42
        18: .line 3073
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 42
        19: .line 3074
            aconst_null
            areturn
        20: .line 3079
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            bipush 49
            if_icmpne 21
            iconst_5
            istore 2 /* state */
            goto 42
        21: .line 3080
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 42
        22: .line 3081
            aconst_null
            areturn
        23: .line 3091
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            invokestatic android.telephony.PhoneNumberUtils.tryGetISODigit:(C)I
            istore 7 /* ret */
        start local 7 // int ret
        24: .line 3092
            iload 7 /* ret */
            ifle 33
        25: .line 3093
            iload 3 /* ccc */
            bipush 10
            imul
            iload 7 /* ret */
            iadd
            istore 3 /* ccc */
        26: .line 3094
            iload 3 /* ccc */
            bipush 100
            if_icmpge 27
            iload 3 /* ccc */
            invokestatic android.telephony.PhoneNumberUtils.isCountryCallingCode:(I)Z
            ifeq 28
        27: .line 3095
      StackMap locals: int
      StackMap stack:
            new android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex
            dup
            iload 3 /* ccc */
            iload 5 /* i */
            iconst_1
            iadd
            invokespecial android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex.<init>:(II)V
            areturn
        28: .line 3097
      StackMap locals:
      StackMap stack:
            iload 2 /* state */
            iconst_1
            if_icmpeq 29
            iload 2 /* state */
            iconst_3
            if_icmpeq 29
            iload 2 /* state */
            iconst_5
            if_icmpne 31
        29: .line 3098
      StackMap locals:
      StackMap stack:
            bipush 6
            istore 2 /* state */
        30: .line 3099
            goto 42
        31: .line 3100
      StackMap locals:
      StackMap stack:
            iinc 2 /* state */ 1
        32: .line 3102
            goto 42
      StackMap locals:
      StackMap stack:
        33: iload 6 /* ch */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 42
        34: .line 3103
            aconst_null
            areturn
        end local 7 // int ret
        35: .line 3108
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            bipush 54
            if_icmpne 36
            bipush 9
            istore 2 /* state */
            goto 42
        36: .line 3109
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 42
        37: .line 3110
            aconst_null
            areturn
        38: .line 3114
      StackMap locals:
      StackMap stack:
            iload 6 /* ch */
            bipush 54
            if_icmpne 40
        39: .line 3115
            new android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex
            dup
            bipush 66
            iload 5 /* i */
            iconst_1
            iadd
            invokespecial android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex.<init>:(II)V
            areturn
        40: .line 3117
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        41: .line 3120
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 6 // char ch
        42: .line 3053
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        43: iload 5 /* i */
            iload 4 /* length */
            if_icmplt 5
        end local 5 // int i
        44: .line 3124
            aconst_null
            areturn
        end local 4 // int length
        end local 3 // int ccc
        end local 2 // int state
        end local 1 // boolean acceptThailandCase
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   45     0                 str  Ljava/lang/String;
            0   45     1  acceptThailandCase  Z
            1   45     2               state  I
            2   45     3                 ccc  I
            3   45     4              length  I
            4   44     5                   i  I
            6   42     6                  ch  C
           24   35     7                 ret  I
    MethodParameters:
                    Name  Flags
      str                 
      acceptThailandCase  

  private static int tryGetTrunkPrefixOmittedIndex(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // java.lang.String str
        start local 1 // int currentIndex
         0: .line 3137
            aload 0 /* str */
            invokevirtual java.lang.String.length:()I
            istore 2 /* length */
        start local 2 // int length
         1: .line 3138
            iload 1 /* currentIndex */
            istore 3 /* i */
        start local 3 // int i
         2: goto 9
         3: .line 3139
      StackMap locals: int int
      StackMap stack:
            aload 0 /* str */
            iload 3 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            istore 4 /* ch */
        start local 4 // char ch
         4: .line 3140
            iload 4 /* ch */
            invokestatic android.telephony.PhoneNumberUtils.tryGetISODigit:(C)I
            iflt 6
         5: .line 3141
            iload 3 /* i */
            iconst_1
            iadd
            ireturn
         6: .line 3142
      StackMap locals: int
      StackMap stack:
            iload 4 /* ch */
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 8
         7: .line 3143
            iconst_m1
            ireturn
        end local 4 // char ch
         8: .line 3138
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            iload 2 /* length */
            if_icmplt 3
        end local 3 // int i
        10: .line 3146
            iconst_m1
            ireturn
        end local 2 // int length
        end local 1 // int currentIndex
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0           str  Ljava/lang/String;
            0   11     1  currentIndex  I
            1   11     2        length  I
            2   10     3             i  I
            4    8     4            ch  C
    MethodParameters:
              Name  Flags
      str           
      currentIndex  

  private static boolean checkPrefixIsIgnorable(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.lang.String str
        start local 1 // int forwardIndex
        start local 2 // int backwardIndex
         0: .line 3156
            iconst_0
            istore 3 /* trunk_prefix_was_read */
        start local 3 // boolean trunk_prefix_was_read
         1: .line 3157
            goto 10
         2: .line 3158
      StackMap locals: int
      StackMap stack:
            aload 0 /* str */
            iload 2 /* backwardIndex */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic android.telephony.PhoneNumberUtils.tryGetISODigit:(C)I
            iflt 7
         3: .line 3159
            iload 3 /* trunk_prefix_was_read */
            ifeq 5
         4: .line 3162
            iconst_0
            ireturn
         5: .line 3165
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* trunk_prefix_was_read */
         6: .line 3167
            goto 9
      StackMap locals:
      StackMap stack:
         7: aload 0 /* str */
            iload 2 /* backwardIndex */
            invokevirtual java.lang.String.charAt:(I)C
            invokestatic android.telephony.PhoneNumberUtils.isDialable:(C)Z
            ifeq 9
         8: .line 3169
            iconst_0
            ireturn
         9: .line 3171
      StackMap locals:
      StackMap stack:
            iinc 2 /* backwardIndex */ -1
        10: .line 3157
      StackMap locals:
      StackMap stack:
            iload 2 /* backwardIndex */
            iload 1 /* forwardIndex */
            if_icmpge 2
        11: .line 3174
            iconst_1
            ireturn
        end local 3 // boolean trunk_prefix_was_read
        end local 2 // int backwardIndex
        end local 1 // int forwardIndex
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   12     0                    str  Ljava/lang/String;
            0   12     1           forwardIndex  I
            0   12     2          backwardIndex  I
            1   12     3  trunk_prefix_was_read  Z
    MethodParameters:
               Name  Flags
      str            final
      forwardIndex   
      backwardIndex  

  private static int getDefaultVoiceSubId();
    descriptor: ()I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 3181
            invokestatic android.telephony.SubscriptionManager.getDefaultVoiceSubscriptionId:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.lang.String convertToEmergencyNumber(android.content.Context, java.lang.String);
    descriptor: (Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 3215
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tcom.android.internal.R.array cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
         Name  Flags
      context  
      number   
}
SourceFile: "PhoneNumberUtils.java"
NestMembers:
  android.telephony.PhoneNumberUtils$BcdExtendType  android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex
InnerClasses:
  public abstract BcdExtendType = android.telephony.PhoneNumberUtils$BcdExtendType of android.telephony.PhoneNumberUtils
  private CountryCallingCodeAndNewIndex = android.telephony.PhoneNumberUtils$CountryCallingCodeAndNewIndex of android.telephony.PhoneNumberUtils
  public Factory = android.text.Spannable$Factory of android.text.Spannable