CamScanner.apk(点击下载) / OcrLanguage.java


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;
    }
}