package com.intsig.nativelib; import android.content.Context; import android.content.SharedPreferences; import android.text.TextUtils; import com.intsig.log.LogUtils; import com.intsig.ocrapi.Util; import com.intsig.utils.LanguageUtil; import com.intsig.utils.PreferenceUtil; import com.microsoft.services.msa.PreferencesConstants; import java.util.ArrayList; import java.util.Arrays; public class OcrLanguage { private static final String[] CLOUD_KEY = {KEY_OCR_LANG_AF, KEY_OCR_LANG_AR, KEY_OCR_LANG_BN, KEY_OCR_LANG_CA, KEY_OCR_LANG_CS, KEY_OCR_LANG_FIL, KEY_OCR_LANG_HE, KEY_OCR_LANG_HI, KEY_OCR_LANG_ID, KEY_OCR_LANG_NE, KEY_OCR_LANG_FA, KEY_OCR_LANG_SA, KEY_OCR_LANG_SR, KEY_OCR_LANG_SK, KEY_OCR_LANG_SL, KEY_OCR_LANG_TA, KEY_OCR_LANG_TH, KEY_OCR_LANG_UK, KEY_OCR_LANG_UR, KEY_OCR_LANG_UZ, KEY_OCR_LANG_VI, KEY_OCR_LANG_PL}; private static final String CODE_OCR_LANG_AF = "af"; private static final String CODE_OCR_LANG_AR = "ar"; private static final String CODE_OCR_LANG_BN = "bn"; private static final String CODE_OCR_LANG_CA = "ca"; private static final String CODE_OCR_LANG_CS = "cs"; private static final String CODE_OCR_LANG_DAN = "da"; private static final String CODE_OCR_LANG_DE = "de"; private static final String CODE_OCR_LANG_DU = "nl"; private static final String CODE_OCR_LANG_EL = "el"; private static final String CODE_OCR_LANG_EN = "en"; private static final String CODE_OCR_LANG_ES = "es"; private static final String CODE_OCR_LANG_FA = "fa"; private static final String CODE_OCR_LANG_FIL = "fil"; private static final String CODE_OCR_LANG_FIN = "fi"; private static final String CODE_OCR_LANG_FR = "fr"; private static final String CODE_OCR_LANG_HE = "he"; private static final String CODE_OCR_LANG_HI = "hi"; private static final String CODE_OCR_LANG_HUN = "hu"; private static final String CODE_OCR_LANG_ID = "id"; private static final String CODE_OCR_LANG_IT = "it"; private static final String CODE_OCR_LANG_JP = "ja"; private static final String CODE_OCR_LANG_KO = "ko"; private static final String CODE_OCR_LANG_NE = "ne"; private static final String CODE_OCR_LANG_NO = "nb"; private static final String CODE_OCR_LANG_PL = "pl"; private static final String CODE_OCR_LANG_PO = "pt"; private static final String CODE_OCR_LANG_RUS = "ru"; private static final String CODE_OCR_LANG_SA = "sa"; private static final String CODE_OCR_LANG_SK = "sk"; private static final String CODE_OCR_LANG_SL = "sl"; private static final String CODE_OCR_LANG_SR = "sr"; private static final String CODE_OCR_LANG_SW = "sv"; private static final String CODE_OCR_LANG_TA = "ta"; private static final String CODE_OCR_LANG_TH = "th"; private static final String CODE_OCR_LANG_TR = "tr"; private static final String CODE_OCR_LANG_UK = "uk"; private static final String CODE_OCR_LANG_UR = "ur"; private static final String CODE_OCR_LANG_UZ = "uz"; private static final String CODE_OCR_LANG_VI = "vi"; public static final String[] EXCEL_KEY = {KEY_EXCEL_LANG_CHS, KEY_EXCEL_LANG_CHT, KEY_EXCEL_LANG_JP, KEY_EXCEL_LANG_KO}; public static final String[] KEY = {KEY_OCR_LANG_CHS, KEY_OCR_LANG_CHT, KEY_OCR_LANG_JP, KEY_OCR_LANG_KO, KEY_OCR_LANG_FR, KEY_OCR_LANG_ES, KEY_OCR_LANG_PO, KEY_OCR_LANG_DE, KEY_OCR_LANG_IT, KEY_OCR_LANG_DU, KEY_OCR_LANG_RUS, KEY_OCR_LANG_EL, KEY_OCR_LANG_TR, KEY_OCR_LANG_SW, KEY_OCR_LANG_FIN, KEY_OCR_LANG_DAN, KEY_OCR_LANG_NO, KEY_OCR_LANG_HUN, KEY_OCR_LANG_AF, KEY_OCR_LANG_AR, KEY_OCR_LANG_BN, KEY_OCR_LANG_CA, KEY_OCR_LANG_CS, KEY_OCR_LANG_FIL, KEY_OCR_LANG_HE, KEY_OCR_LANG_HI, KEY_OCR_LANG_ID, KEY_OCR_LANG_NE, KEY_OCR_LANG_FA, KEY_OCR_LANG_SA, KEY_OCR_LANG_SR, KEY_OCR_LANG_SK, KEY_OCR_LANG_SL, KEY_OCR_LANG_TA, KEY_OCR_LANG_TH, KEY_OCR_LANG_UK, KEY_OCR_LANG_UR, KEY_OCR_LANG_UZ, KEY_OCR_LANG_VI, KEY_OCR_LANG_PL, KEY_OCR_LANG_ENG}; private static final String KEY_EXCEL_LANG_CHS = "KEY_EXCEL_LANG_CHS"; private static final String KEY_EXCEL_LANG_CHT = "KEY_EXCEL_LANG_CHT"; private static final String KEY_EXCEL_LANG_JP = "KEY_EXCEL_LANG_JP"; private static final String KEY_EXCEL_LANG_KO = "KEY_EXCEL_LANG_KO"; private static final String KEY_OCR_LANG_AF = "KEY_OCR_LANG_AF"; private static final String KEY_OCR_LANG_AR = "KEY_OCR_LANG_AR"; private static final String KEY_OCR_LANG_BN = "KEY_OCR_LANG_BN"; private static final String KEY_OCR_LANG_CA = "KEY_OCR_LANG_CA"; private static final String KEY_OCR_LANG_CHS = "KEY_OCR_LANG_CHS"; private static final String KEY_OCR_LANG_CHT = "KEY_OCR_LANG_CHT"; private static final String KEY_OCR_LANG_CS = "KEY_OCR_LANG_CS"; private static final String KEY_OCR_LANG_DAN = "KEY_OCR_LANG_DAN"; private static final String KEY_OCR_LANG_DE = "KEY_OCR_LANG_DE"; private static final String KEY_OCR_LANG_DU = "KEY_OCR_LANG_DU"; private static final String KEY_OCR_LANG_EL = "KEY_OCR_LANG_EL"; private static final String KEY_OCR_LANG_ENG = "KEY_OCR_LANG_ENG"; private static final String KEY_OCR_LANG_ES = "KEY_OCR_LANG_ES"; private static final String KEY_OCR_LANG_FA = "KEY_OCR_LANG_FA"; private static final String KEY_OCR_LANG_FIL = "KEY_OCR_LANG_FIL"; private static final String KEY_OCR_LANG_FIN = "KEY_OCR_LANG_FIN"; private static final String KEY_OCR_LANG_FR = "KEY_OCR_LANG_FR"; private static final String KEY_OCR_LANG_HE = "KEY_OCR_LANG_HE"; private static final String KEY_OCR_LANG_HI = "KEY_OCR_LANG_HI"; private static final String KEY_OCR_LANG_HUN = "KEY_OCR_LANG_HUN"; private static final String KEY_OCR_LANG_ID = "KEY_OCR_LANG_ID"; private static final String KEY_OCR_LANG_IT = "KEY_OCR_LANG_IT"; private static final String KEY_OCR_LANG_JP = "KEY_OCR_LANG_JP"; private static final String KEY_OCR_LANG_KO = "KEY_OCR_LANG_KO"; private static final String KEY_OCR_LANG_NE = "KEY_OCR_LANG_NE"; private static final String KEY_OCR_LANG_NO = "KEY_OCR_LANG_NO"; private static final String KEY_OCR_LANG_PL = "KEY_OCR_LANG_PL"; private static final String KEY_OCR_LANG_PO = "KEY_OCR_LANG_PO"; private static final String KEY_OCR_LANG_RUS = "KEY_OCR_LANG_RUS"; private static final String KEY_OCR_LANG_SA = "KEY_OCR_LANG_SA"; private static final String KEY_OCR_LANG_SK = "KEY_OCR_LANG_SK"; private static final String KEY_OCR_LANG_SL = "KEY_OCR_LANG_SL"; private static final String KEY_OCR_LANG_SR = "KEY_OCR_LANG_SR"; private static final String KEY_OCR_LANG_SW = "KEY_OCR_LANG_SW"; private static final String KEY_OCR_LANG_TA = "KEY_OCR_LANG_TA"; private static final String KEY_OCR_LANG_TH = "KEY_OCR_LANG_TH"; private static final String KEY_OCR_LANG_TR = "KEY_OCR_LANG_TR"; private static final String KEY_OCR_LANG_UK = "KEY_OCR_LANG_UK"; private static final String KEY_OCR_LANG_UR = "KEY_OCR_LANG_UR"; private static final String KEY_OCR_LANG_UZ = "KEY_OCR_LANG_UZ"; private static final String KEY_OCR_LANG_VI = "KEY_OCR_LANG_VI"; public static final String KEY_SET_OCR_LANGUAGE = "KEY_SET_OCR_LANGUAGE"; private static final long LANGUAGE_Afrikaans = 262144; private static final long LANGUAGE_Arabic = 524288; private static final long LANGUAGE_Bengali = 1048576; private static final long LANGUAGE_Catalan = 2097152; private static final long LANGUAGE_ChsSimp = 1; private static final long LANGUAGE_ChsTrad = 2; private static final long LANGUAGE_Czech = 4194304; private static final long LANGUAGE_Danish = 32768; private static final long LANGUAGE_Dutch = 512; private static final long LANGUAGE_English = 0; private static final long LANGUAGE_Filipino = 8388608; private static final long LANGUAGE_Finnish = 16384; private static final long LANGUAGE_France = 16; private static final long LANGUAGE_German = 128; private static final long LANGUAGE_Greek = 2048; private static final long LANGUAGE_Hebrew = 16777216; private static final long LANGUAGE_Hindi = 33554432; private static final long LANGUAGE_Hungarian = 131072; private static final long LANGUAGE_Indonesian = 67108864; private static final long LANGUAGE_Italy = 256; private static final long LANGUAGE_Japan = 4; private static final long LANGUAGE_Korean = 8; private static final long LANGUAGE_Nepali = 134217728; private static final long LANGUAGE_Norwegian = 65536; private static final long LANGUAGE_Persian = 268435456; private static final long LANGUAGE_Poland = 549755813888L; private static final long LANGUAGE_Portuguese = 64; private static final long LANGUAGE_Russia = 1024; private static final long LANGUAGE_Sanskrit = 536870912; private static final long LANGUAGE_Serbian = 1073741824; private static final long LANGUAGE_Slovak = 2147483648L; private static final long LANGUAGE_Slovenian = 4294967296L; private static final long LANGUAGE_Spain = 32; private static final long LANGUAGE_Swedish = 8192; private static final long LANGUAGE_Tamil = 8589934592L; private static final long LANGUAGE_Thai = 17179869184L; private static final long LANGUAGE_Turkish = 4096; private static final long LANGUAGE_Ukrainian = 34359738368L; private static final long LANGUAGE_Urdu = 68719476736L; private static final long LANGUAGE_Uzbek = 137438953472L; private static final long LANGUAGE_Vietnamese = 274877906944L; public static final String OCR_LANGUAGE_RESET_TAG = "ocr_language_reset_tag"; public static final String TAG = "OcrLanguage"; private static long sAllLanguage = -1; private static final int[] s_NEW_VALUES = {1, 2, 3, 4, 6, 44, 7, 8, 9, 10, 45, 51, 35, 11, 12, 13, 14, 15}; private static final long[] s_OLD_VALUES = {1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, LANGUAGE_Czech, LANGUAGE_Filipino, LANGUAGE_Hebrew, LANGUAGE_Hindi, LANGUAGE_Indonesian, LANGUAGE_Nepali, LANGUAGE_Persian, LANGUAGE_Sanskrit, 1073741824, LANGUAGE_Slovak, LANGUAGE_Slovenian, LANGUAGE_Tamil, LANGUAGE_Thai, LANGUAGE_Ukrainian, LANGUAGE_Urdu, LANGUAGE_Uzbek, LANGUAGE_Vietnamese, LANGUAGE_Poland, 0}; public enum LangMode { OCR, EXCEL } public static void clearCloudLanguage() { SharedPreferences.Editor e10 = PreferenceUtil.f().e(); for (String str : CLOUD_KEY) { e10.putBoolean(str, false); } e10.apply(); } public static long filterLanguage(long j2) { if (j2 >= 0) { return j2 & getAllLanguage(); } return -1; } public static long getAllLang() { long j2 = 0; for (long j10 : s_OLD_VALUES) { j2 |= j10; } return j2; } public static long getAllLanguage() { if (sAllLanguage < 0) { sAllLanguage = 0; for (long j2 : s_OLD_VALUES) { sAllLanguage = j2 | sAllLanguage; } } return sAllLanguage; } public static String getExcelLanguageByKey(String str) { return KEY_EXCEL_LANG_CHS.equalsIgnoreCase(str) ? "zh" : KEY_EXCEL_LANG_CHT.equalsIgnoreCase(str) ? "zht" : KEY_EXCEL_LANG_JP.equalsIgnoreCase(str) ? CODE_OCR_LANG_JP : KEY_EXCEL_LANG_KO.equalsIgnoreCase(str) ? CODE_OCR_LANG_KO : ""; } public static int getExcelLanguageCount() { PreferenceUtil f10 = PreferenceUtil.f(); int i10 = 1; for (String str : EXCEL_KEY) { if (f10.d(str, false)) { i10++; } } return i10; } public static long getLanguage() { PreferenceUtil f10 = PreferenceUtil.f(); long j2 = 0; int i10 = 0; while (true) { String[] strArr = KEY; if (i10 >= strArr.length) { return j2; } if (f10.d(strArr[i10], false)) { j2 |= s_OLD_VALUES[i10]; } i10++; } } public static String getLanguageByKey(String str) { return KEY_OCR_LANG_CHS.equalsIgnoreCase(str) ? "zh" : KEY_OCR_LANG_CHT.equalsIgnoreCase(str) ? "zht" : KEY_OCR_LANG_ENG.equalsIgnoreCase(str) ? CODE_OCR_LANG_EN : KEY_OCR_LANG_JP.equalsIgnoreCase(str) ? CODE_OCR_LANG_JP : KEY_OCR_LANG_KO.equalsIgnoreCase(str) ? CODE_OCR_LANG_KO : KEY_OCR_LANG_FR.equalsIgnoreCase(str) ? CODE_OCR_LANG_FR : KEY_OCR_LANG_ES.equalsIgnoreCase(str) ? CODE_OCR_LANG_ES : KEY_OCR_LANG_PO.equalsIgnoreCase(str) ? CODE_OCR_LANG_PO : KEY_OCR_LANG_DE.equalsIgnoreCase(str) ? CODE_OCR_LANG_DE : KEY_OCR_LANG_IT.equalsIgnoreCase(str) ? CODE_OCR_LANG_IT : KEY_OCR_LANG_DU.equalsIgnoreCase(str) ? CODE_OCR_LANG_DU : KEY_OCR_LANG_RUS.equalsIgnoreCase(str) ? CODE_OCR_LANG_RUS : KEY_OCR_LANG_EL.equalsIgnoreCase(str) ? CODE_OCR_LANG_EL : KEY_OCR_LANG_TR.equalsIgnoreCase(str) ? CODE_OCR_LANG_TR : KEY_OCR_LANG_SW.equalsIgnoreCase(str) ? CODE_OCR_LANG_SW : KEY_OCR_LANG_FIN.equalsIgnoreCase(str) ? CODE_OCR_LANG_FIN : KEY_OCR_LANG_DAN.equalsIgnoreCase(str) ? CODE_OCR_LANG_DAN : KEY_OCR_LANG_NO.equalsIgnoreCase(str) ? CODE_OCR_LANG_NO : KEY_OCR_LANG_HUN.equalsIgnoreCase(str) ? CODE_OCR_LANG_HUN : KEY_OCR_LANG_AF.equalsIgnoreCase(str) ? CODE_OCR_LANG_AF : KEY_OCR_LANG_AR.equalsIgnoreCase(str) ? CODE_OCR_LANG_AR : KEY_OCR_LANG_BN.equalsIgnoreCase(str) ? CODE_OCR_LANG_BN : KEY_OCR_LANG_CA.equalsIgnoreCase(str) ? CODE_OCR_LANG_CA : KEY_OCR_LANG_CS.equalsIgnoreCase(str) ? CODE_OCR_LANG_CS : KEY_OCR_LANG_FIL.equalsIgnoreCase(str) ? CODE_OCR_LANG_FIL : KEY_OCR_LANG_HE.equalsIgnoreCase(str) ? CODE_OCR_LANG_HE : KEY_OCR_LANG_HI.equalsIgnoreCase(str) ? CODE_OCR_LANG_HI : KEY_OCR_LANG_ID.equalsIgnoreCase(str) ? "id" : KEY_OCR_LANG_NE.equalsIgnoreCase(str) ? CODE_OCR_LANG_NE : KEY_OCR_LANG_FA.equalsIgnoreCase(str) ? CODE_OCR_LANG_FA : KEY_OCR_LANG_SA.equalsIgnoreCase(str) ? CODE_OCR_LANG_SA : KEY_OCR_LANG_SR.equalsIgnoreCase(str) ? CODE_OCR_LANG_SR : KEY_OCR_LANG_SK.equalsIgnoreCase(str) ? CODE_OCR_LANG_SK : KEY_OCR_LANG_SL.equalsIgnoreCase(str) ? CODE_OCR_LANG_SL : KEY_OCR_LANG_TA.equalsIgnoreCase(str) ? CODE_OCR_LANG_TA : KEY_OCR_LANG_TH.equalsIgnoreCase(str) ? CODE_OCR_LANG_TH : KEY_OCR_LANG_UK.equalsIgnoreCase(str) ? CODE_OCR_LANG_UK : KEY_OCR_LANG_UR.equalsIgnoreCase(str) ? CODE_OCR_LANG_UR : KEY_OCR_LANG_UZ.equalsIgnoreCase(str) ? CODE_OCR_LANG_UZ : KEY_OCR_LANG_VI.equalsIgnoreCase(str) ? CODE_OCR_LANG_VI : KEY_OCR_LANG_PL.equalsIgnoreCase(str) ? "pl" : ""; } public static int getLanguageCount() { PreferenceUtil f10 = PreferenceUtil.f(); int i10 = 0; for (String str : KEY) { if (f10.d(str, false)) { i10++; } } return i10; } public static String getLanguages(String[] strArr, LangMode langMode, boolean z10) { StringBuilder sb2 = new StringBuilder(); PreferenceUtil f10 = PreferenceUtil.f(); for (String str : strArr) { if (f10.d(str, false)) { String excelLanguageByKey = langMode == LangMode.EXCEL ? getExcelLanguageByKey(str) : getLanguageByKey(str); if (sb2.length() > 0) { sb2.append(PreferencesConstants.COOKIE_DELIMITER); sb2.append(excelLanguageByKey); } else { sb2.append(excelLanguageByKey); } } } int length = sb2.toString().length(); String str2 = CODE_OCR_LANG_EN; if (length <= 0) { if (z10) { String excelLanguageByKey2 = langMode == LangMode.EXCEL ? getExcelLanguageByKey(getSystemLanguageKey4Excel()) : getLanguageByKey(getSystemLanguageKey()); if (!TextUtils.equals(excelLanguageByKey2, str2)) { str2 = "en," + excelLanguageByKey2; } } return str2; } else if (langMode != LangMode.EXCEL) { return sb2.toString(); } else { return "en," + sb2.toString(); } } public static long getSysAndDefLanguage(Context context) { String systemLanguageKey = getSystemLanguageKey(); int i10 = 0; while (true) { String[] strArr = KEY; if (i10 >= strArr.length) { return 0; } if (strArr[i10].equalsIgnoreCase(systemLanguageKey)) { return 0 | s_OLD_VALUES[i10]; } i10++; } } public static String getSystemLanguageKey() { String h10 = LanguageUtil.h(); String d10 = LanguageUtil.d(); if ("zh".equals(h10)) { return "cn".equals(d10) ? KEY_OCR_LANG_CHS : KEY_OCR_LANG_CHT; } if (CODE_OCR_LANG_EN.equals(h10)) { return KEY_OCR_LANG_ENG; } if (CODE_OCR_LANG_JP.equals(h10)) { return KEY_OCR_LANG_JP; } if (CODE_OCR_LANG_KO.equals(h10)) { return KEY_OCR_LANG_KO; } if (CODE_OCR_LANG_FR.equals(h10)) { return KEY_OCR_LANG_FR; } if (CODE_OCR_LANG_ES.equals(h10)) { return KEY_OCR_LANG_ES; } if (CODE_OCR_LANG_PO.equals(h10)) { return KEY_OCR_LANG_PO; } if (CODE_OCR_LANG_DE.equals(h10)) { return KEY_OCR_LANG_DE; } if (CODE_OCR_LANG_IT.equals(h10)) { return KEY_OCR_LANG_IT; } if (CODE_OCR_LANG_DU.equals(h10)) { return KEY_OCR_LANG_DU; } if (CODE_OCR_LANG_RUS.equals(h10)) { return KEY_OCR_LANG_RUS; } if (CODE_OCR_LANG_EL.equals(h10)) { return KEY_OCR_LANG_EL; } if (CODE_OCR_LANG_TR.equals(h10)) { return KEY_OCR_LANG_TR; } if (CODE_OCR_LANG_SW.equals(h10)) { return KEY_OCR_LANG_SW; } if (CODE_OCR_LANG_FIN.equals(h10)) { return KEY_OCR_LANG_FIN; } if (CODE_OCR_LANG_DAN.equals(h10)) { return KEY_OCR_LANG_DAN; } if (CODE_OCR_LANG_NO.equals(h10)) { return KEY_OCR_LANG_NO; } if (CODE_OCR_LANG_HUN.equals(h10)) { return KEY_OCR_LANG_HUN; } if (CODE_OCR_LANG_AF.equals(h10)) { return KEY_OCR_LANG_AF; } if (CODE_OCR_LANG_AR.equals(h10)) { return KEY_OCR_LANG_AR; } if (CODE_OCR_LANG_BN.equals(h10)) { return KEY_OCR_LANG_BN; } if (CODE_OCR_LANG_CA.equals(h10)) { return KEY_OCR_LANG_CA; } if (CODE_OCR_LANG_CS.equals(h10)) { return KEY_OCR_LANG_CS; } if (!CODE_OCR_LANG_FIL.equals(h10)) { if (!"tl".equals(h10)) { if (!CODE_OCR_LANG_HE.equals(h10)) { if (!"iw".equals(h10)) { if (CODE_OCR_LANG_HI.equals(h10)) { return KEY_OCR_LANG_HI; } if ("id".equals(h10)) { return KEY_OCR_LANG_ID; } if (CODE_OCR_LANG_NE.equals(h10)) { return KEY_OCR_LANG_NE; } if (CODE_OCR_LANG_FA.equals(h10)) { return KEY_OCR_LANG_FA; } if (CODE_OCR_LANG_SA.equals(h10)) { return KEY_OCR_LANG_SA; } if (CODE_OCR_LANG_SR.equals(h10)) { return KEY_OCR_LANG_SR; } if (CODE_OCR_LANG_SK.equals(h10)) { return KEY_OCR_LANG_SK; } if (CODE_OCR_LANG_SL.equals(h10)) { return KEY_OCR_LANG_SL; } if (CODE_OCR_LANG_TA.equals(h10)) { return KEY_OCR_LANG_TA; } if (CODE_OCR_LANG_TH.equals(h10)) { return KEY_OCR_LANG_TH; } if (CODE_OCR_LANG_UK.equals(h10)) { return KEY_OCR_LANG_UK; } if (CODE_OCR_LANG_UR.equals(h10)) { return KEY_OCR_LANG_UR; } if (CODE_OCR_LANG_UZ.equals(h10)) { return KEY_OCR_LANG_UZ; } if (CODE_OCR_LANG_VI.equals(h10)) { return KEY_OCR_LANG_VI; } if ("pl".equals(h10)) { return KEY_OCR_LANG_PL; } return null; } } return KEY_OCR_LANG_HE; } } return KEY_OCR_LANG_FIL; } public static String getSystemLanguageKey4Excel() { String h10 = LanguageUtil.h(); String d10 = LanguageUtil.d(); if ("zh".equals(h10)) { return "cn".equals(d10) ? KEY_EXCEL_LANG_CHS : KEY_EXCEL_LANG_CHT; } if (CODE_OCR_LANG_JP.equals(h10)) { return KEY_EXCEL_LANG_JP; } if (CODE_OCR_LANG_KO.equals(h10)) { return KEY_EXCEL_LANG_KO; } return null; } public static void resetLanguage(Context context) { PreferenceUtil f10 = PreferenceUtil.f(); boolean d10 = f10.d(OCR_LANGUAGE_RESET_TAG, false); int languageCount = getLanguageCount(); if (!d10 && languageCount > 3) { SharedPreferences.Editor e10 = f10.e(); e10.putBoolean(KEY_OCR_LANG_ENG, true); String systemLanguageKey = getSystemLanguageKey(); String[] strArr = KEY; for (String str : strArr) { e10.putBoolean(str, str.equalsIgnoreCase(systemLanguageKey)); } e10.putBoolean(OCR_LANGUAGE_RESET_TAG, true); e10.apply(); LogUtils.a(TAG, "reset language , last language count = " + languageCount); } } public static int[] transformLanguage(long j2) { ArrayList arrayList = new ArrayList(); if (j2 == 0) { arrayList.add(5); } long[] jArr = s_OLD_VALUES; int length = jArr.length; int i10 = 0; int i11 = 0; while (true) { if (i10 >= length) { break; } if ((jArr[i10] & j2) != 0) { int[] iArr = s_NEW_VALUES; if (i11 < iArr.length) { arrayList.add(Integer.valueOf(iArr[i11])); } } i11++; if (i11 >= s_NEW_VALUES.length) { break; } i10++; } int size = arrayList.size(); int[] iArr2 = new int[size]; for (int i12 = 0; i12 < size; i12++) { iArr2[i12] = ((Integer) arrayList.get(i12)).intValue(); } Util.b(TAG, Arrays.toString(iArr2)); return iArr2; } }