home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / java / util / Locale.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  12.4 KB  |  572 lines

  1. package java.util;
  2.  
  3. import java.io.IOException;
  4. import java.io.ObjectInputStream;
  5. import java.io.ObjectOutputStream;
  6. import java.io.Serializable;
  7. import java.security.AccessController;
  8. import java.text.Format;
  9. import java.text.MessageFormat;
  10. import java.text.resources.LocaleData;
  11. import sun.security.action.GetPropertyAction;
  12.  
  13. public final class Locale implements Cloneable, Serializable {
  14.    public static final Locale ENGLISH = new Locale("en", "", "");
  15.    public static final Locale FRENCH = new Locale("fr", "", "");
  16.    public static final Locale GERMAN = new Locale("de", "", "");
  17.    public static final Locale ITALIAN = new Locale("it", "", "");
  18.    public static final Locale JAPANESE = new Locale("ja", "", "");
  19.    public static final Locale KOREAN = new Locale("ko", "", "");
  20.    public static final Locale CHINESE = new Locale("zh", "", "");
  21.    public static final Locale SIMPLIFIED_CHINESE = new Locale("zh", "CN", "");
  22.    public static final Locale TRADITIONAL_CHINESE = new Locale("zh", "TW", "");
  23.    public static final Locale FRANCE = new Locale("fr", "FR", "");
  24.    public static final Locale GERMANY = new Locale("de", "DE", "");
  25.    public static final Locale ITALY = new Locale("it", "IT", "");
  26.    public static final Locale JAPAN = new Locale("ja", "JP", "");
  27.    public static final Locale KOREA = new Locale("ko", "KR", "");
  28.    public static final Locale CHINA = new Locale("zh", "CN", "");
  29.    public static final Locale PRC = new Locale("zh", "CN", "");
  30.    public static final Locale TAIWAN = new Locale("zh", "TW", "");
  31.    // $FF: renamed from: UK java.util.Locale
  32.    public static final Locale field_0 = new Locale("en", "GB", "");
  33.    // $FF: renamed from: US java.util.Locale
  34.    public static final Locale field_1 = new Locale("en", "US", "");
  35.    public static final Locale CANADA = new Locale("en", "CA", "");
  36.    public static final Locale CANADA_FRENCH = new Locale("fr", "CA", "");
  37.    static final long serialVersionUID = 9149081749638150636L;
  38.    private String language;
  39.    private String country;
  40.    private String variant;
  41.    private int hashcode;
  42.    private static Locale defaultLocale;
  43.    private static String[] isoLanguages;
  44.    private static final String compressedIsoLanguages = ",aaaar,ababk,afafr,amamh,arara,asasm,ayaym,azaze,babak,bebel,bgbul,bhbih,bibis,bnben,bobod,brbre,cacat,cocos,csces,cycym,dadan,dedeu,dzdzo,elell,eneng,eoepo,esspa,etest,eueus,fafas,fifin,fjfij,fofao,frfra,fyfry,gagai,gdgdh,glglg,gngrn,guguj,hahau,heheb,hihin,hrhrv,huhun,hyhye,iaina,idind,ieile,ikipk,inind,isisl,itita,iuiku,iwheb,jajpn,jiyid,jwjaw,kakat,kkkaz,klkal,kmkhm,knkan,kokor,kskas,kukur,kykir,lalat,lnlin,lolao,ltlit,lvlav,mgmlg,mimri,mkmkd,mlmal,mnmon,momol,mrmar,msmsa,mtmlt,mymya,nanau,nenep,nlnld,nonor,ococi,omorm,orori,papan,plpol,pspus,ptpor,quque,rmroh,rnrun,roron,rurus,rwkin,sasan,sdsnd,sgsag,shsrp,sisin,skslk,slslv,smsmo,snsna,sosom,sqsqi,srsrp,ssssw,stsot,susun,svswe,swswa,tatam,tetel,tgtgk,ththa,titir,tktuk,tltgl,tntsn,toton,trtur,tstso,tttat,twtwi,uguig,ukukr,ururd,uzuzb,vivie,vovol,wowol,xhxho,yiyid,yoyor,zazha,zhzho,zuzul";
  45.    private static String[] isoCountries;
  46.    private static final String compressedIsoCountries = ",ADAND,AEARE,AFAFG,AGATG,AIAIA,ALALB,AMARM,ANANT,AOAGO,AQATA,ARARG,ASASM,ATAUT,AUAUS,AWABW,AZAZE,BABIH,BBBRB,BDBGD,BEBEL,BFBFA,BGBGR,BHBHR,BIBDI,BJBEN,BMBMU,BNBRN,BOBOL,BRBRA,BSBHS,BTBTN,BVBVT,BWBWA,BYBLR,BZBLZ,CACAN,CCCCK,CFCAF,CGCOG,CHCHE,CICIV,CKCOK,CLCHL,CMCMR,CNCHN,COCOL,CRCRI,CUCUB,CVCPV,CXCXR,CYCYP,CZCZE,DEDEU,DJDJI,DKDNK,DMDMA,DODOM,DZDZA,ECECU,EEEST,EGEGY,EHESH,ERERI,ESESP,ETETH,FIFIN,FJFJI,FKFLK,FMFSM,FOFRO,FRFRA,FXFXX,GAGAB,GBGBR,GDGRD,GEGEO,GFGUF,GHGHA,GIGIB,GLGRL,GMGMB,GNGIN,GPGLP,GQGNQ,GRGRC,GSSGS,GTGTM,GUGUM,GWGNB,GYGUY,HKHKG,HMHMD,HNHND,HRHRV,HTHTI,HUHUN,IDIDN,IEIRL,ILISR,ININD,IOIOT,IQIRQ,IRIRN,ISISL,ITITA,JMJAM,JOJOR,JPJPN,KEKEN,KGKGZ,KHKHM,KIKIR,KMCOM,KNKNA,KPPRK,KRKOR,KWKWT,KYCYM,KZKAZ,LALAO,LBLBN,LCLCA,LILIE,LKLKA,LRLBR,LSLSO,LTLTU,LULUX,LVLVA,LYLBY,MAMAR,MCMCO,MDMDA,MGMDG,MHMHL,MKMKD,MLMLI,MMMMR,MNMNG,MOMAC,MPMNP,MQMTQ,MRMRT,MSMSR,MTMLT,MUMUS,MVMDV,MWMWI,MXMEX,MYMYS,MZMOZ,NANAM,NCNCL,NENER,NFNFK,NGNGA,NINIC,NLNLD,NONOR,NPNPL,NRNRU,NUNIU,NZNZL,OMOMN,PAPAN,PEPER,PFPYF,PGPNG,PHPHL,PKPAK,PLPOL,PMSPM,PNPCN,PRPRI,PTPRT,PWPLW,PYPRY,QAQAT,REREU,ROROM,RURUS,RWRWA,SASAU,SBSLB,SCSYC,SDSDN,SESWE,SGSGP,SHSHN,SISVN,SJSJM,SKSVK,SLSLE,SMSMR,SNSEN,SOSOM,SRSUR,STSTP,SVSLV,SYSYR,SZSWZ,TCTCA,TDTCD,TFATF,TGTGO,THTHA,TJTJK,TKTKL,TMTKM,TNTUN,TOTON,TPTMP,TRTUR,TTTTO,TVTUV,TWTWN,TZTZA,UAUKR,UGUGA,UMUMI,USUSA,UYURY,UZUZB,VAVAT,VCVCT,VEVEN,VGVGB,VIVIR,VNVNM,VUVUT,WFWLF,WSWSM,YEYEM,YTMYT,YUYUG,ZAZAF,ZMZMB,ZRZAR,ZWZWE";
  47.    private static Hashtable ctry2LangMapping;
  48.    private static final String compressedCtry2LangMapping = "ADfresAEarenAFpsAGenAIrnALsqAMhyruANnlenAOptAResASensmATdeAUenAWnlenAZazhyruBAsrshhrslmksqBBenBDbnhibhenBEfrnldeBFfrBGbgtrBHarenBIrnfrswBJfrBMenBNmsenzhBOesayquBRptBSenBTdzenneBVnoBWentnBYberuBZenesCAenfrCCenCFfrsgCGfrCHfrdeitrmCIfrCKmienCLesCMenfrCNzhboCOesCResCUesCVptCXenCYeltrenCZcsskDEdeDJarfrsoDKdaDMenfrDOesDZarfrECesquEEetruEGarenfrEHarfritERamtiarenitESeseucaglETamarenFIfisvFJenfjhiFKenFMenFOfodaFRfreubrcoFXfrGAfrGBengdcyGDenfrGEkahyruGFfrGHenGIenesGLdaikklGMenwoGNfrGPfrenGQesGRelGTesGUenGWptGYenhiurHKzhenHNesHRhrHTfrHUhuIDinennlIEengaILiwarjiINhienguknksmlmrneorpasatateIOenIQarkutkIRfaarkuISisITitfrdeJMenJOarJPjaKEenswKGkyKHkmKIenKMfrarKNenKPkoKRkoKWarenKYenKZkkruLAlofrLBarenfrLCenfrLIdeLKtasienLRenLSstenLTltruplLUfrdeLVlvltruLYarenitMAarfresMCfrenitMDmorobgMGmgenfrMKmkshtrMLfrMMmyMNmnruMOzhptMQfrMRarfrMSenMTmtenitMUenfrhiMWenMXesMYmsenMZptNAenafdeNEfrhaNFenNGenhayoNIesNLnlfyNOnoNPneNRnaenNUenNZenmiOMarenPAesenPEesquayPFfrPGenPHentlesPKurenpspasdPLplPMfrenPNenPResenPTptPWenPYesgnQAarenREfrtaROrohuRUruRWenfrrwSAarSBenSCenfrSDarsuSEsvSGzhenmstaSHenSIslSJnoSKskhuplshSLenSMitSNfrSOarenitsoSRnleneshiSTptSVesSYarSZenssTCenTDfrarTFfrTGfrTHthTJtgruuzTKenmiTMtkruTNarTOentoTRtrkuTTenTVenTWzhTZenswUAukruUGenswUMenUSenesUYesUZuzruVAlaitVCenVEesVGenVIenVNvizhfrVUenfrbiWFfrWSensmYEarYTfrmgswYUsrshmkhuZAafenZMenZRfrswZWensn";
  49.  
  50.    public Locale(String var1, String var2, String var3) {
  51.       this.language = "";
  52.       this.country = "";
  53.       this.variant = "";
  54.       this.hashcode = -1;
  55.       this.language = this.convertOldISOCodes(var1);
  56.       this.country = this.toUpperCase(var2).intern();
  57.       this.variant = this.toUpperCase(var3).intern();
  58.    }
  59.  
  60.    public Locale(String var1, String var2) {
  61.       this(var1, var2, "");
  62.    }
  63.  
  64.    public static Locale getDefault() {
  65.       return defaultLocale;
  66.    }
  67.  
  68.    public static synchronized void setDefault(Locale var0) {
  69.       if (var0 == null) {
  70.          throw new NullPointerException("Can't set default locale to NULL");
  71.       } else {
  72.          SecurityManager var1 = System.getSecurityManager();
  73.          if (var1 != null) {
  74.             var1.checkPermission(new PropertyPermission("user.language", "write"));
  75.          }
  76.  
  77.          defaultLocale = var0;
  78.       }
  79.    }
  80.  
  81.    public static Locale[] getAvailableLocales() {
  82.       return LocaleData.getAvailableLocales("LocaleString");
  83.    }
  84.  
  85.    public static String[] getISOCountries() {
  86.       if (isoCountries == null) {
  87.          isoCountries = new String[",ADAND,AEARE,AFAFG,AGATG,AIAIA,ALALB,AMARM,ANANT,AOAGO,AQATA,ARARG,ASASM,ATAUT,AUAUS,AWABW,AZAZE,BABIH,BBBRB,BDBGD,BEBEL,BFBFA,BGBGR,BHBHR,BIBDI,BJBEN,BMBMU,BNBRN,BOBOL,BRBRA,BSBHS,BTBTN,BVBVT,BWBWA,BYBLR,BZBLZ,CACAN,CCCCK,CFCAF,CGCOG,CHCHE,CICIV,CKCOK,CLCHL,CMCMR,CNCHN,COCOL,CRCRI,CUCUB,CVCPV,CXCXR,CYCYP,CZCZE,DEDEU,DJDJI,DKDNK,DMDMA,DODOM,DZDZA,ECECU,EEEST,EGEGY,EHESH,ERERI,ESESP,ETETH,FIFIN,FJFJI,FKFLK,FMFSM,FOFRO,FRFRA,FXFXX,GAGAB,GBGBR,GDGRD,GEGEO,GFGUF,GHGHA,GIGIB,GLGRL,GMGMB,GNGIN,GPGLP,GQGNQ,GRGRC,GSSGS,GTGTM,GUGUM,GWGNB,GYGUY,HKHKG,HMHMD,HNHND,HRHRV,HTHTI,HUHUN,IDIDN,IEIRL,ILISR,ININD,IOIOT,IQIRQ,IRIRN,ISISL,ITITA,JMJAM,JOJOR,JPJPN,KEKEN,KGKGZ,KHKHM,KIKIR,KMCOM,KNKNA,KPPRK,KRKOR,KWKWT,KYCYM,KZKAZ,LALAO,LBLBN,LCLCA,LILIE,LKLKA,LRLBR,LSLSO,LTLTU,LULUX,LVLVA,LYLBY,MAMAR,MCMCO,MDMDA,MGMDG,MHMHL,MKMKD,MLMLI,MMMMR,MNMNG,MOMAC,MPMNP,MQMTQ,MRMRT,MSMSR,MTMLT,MUMUS,MVMDV,MWMWI,MXMEX,MYMYS,MZMOZ,NANAM,NCNCL,NENER,NFNFK,NGNGA,NINIC,NLNLD,NONOR,NPNPL,NRNRU,NUNIU,NZNZL,OMOMN,PAPAN,PEPER,PFPYF,PGPNG,PHPHL,PKPAK,PLPOL,PMSPM,PNPCN,PRPRI,PTPRT,PWPLW,PYPRY,QAQAT,REREU,ROROM,RURUS,RWRWA,SASAU,SBSLB,SCSYC,SDSDN,SESWE,SGSGP,SHSHN,SISVN,SJSJM,SKSVK,SLSLE,SMSMR,SNSEN,SOSOM,SRSUR,STSTP,SVSLV,SYSYR,SZSWZ,TCTCA,TDTCD,TFATF,TGTGO,THTHA,TJTJK,TKTKL,TMTKM,TNTUN,TOTON,TPTMP,TRTUR,TTTTO,TVTUV,TWTWN,TZTZA,UAUKR,UGUGA,UMUMI,USUSA,UYURY,UZUZB,VAVAT,VCVCT,VEVEN,VGVGB,VIVIR,VNVNM,VUVUT,WFWLF,WSWSM,YEYEM,YTMYT,YUYUG,ZAZAF,ZMZMB,ZRZAR,ZWZWE".length() / 6];
  88.  
  89.          for(int var0 = 0; var0 < isoCountries.length; ++var0) {
  90.             isoCountries[var0] = ",ADAND,AEARE,AFAFG,AGATG,AIAIA,ALALB,AMARM,ANANT,AOAGO,AQATA,ARARG,ASASM,ATAUT,AUAUS,AWABW,AZAZE,BABIH,BBBRB,BDBGD,BEBEL,BFBFA,BGBGR,BHBHR,BIBDI,BJBEN,BMBMU,BNBRN,BOBOL,BRBRA,BSBHS,BTBTN,BVBVT,BWBWA,BYBLR,BZBLZ,CACAN,CCCCK,CFCAF,CGCOG,CHCHE,CICIV,CKCOK,CLCHL,CMCMR,CNCHN,COCOL,CRCRI,CUCUB,CVCPV,CXCXR,CYCYP,CZCZE,DEDEU,DJDJI,DKDNK,DMDMA,DODOM,DZDZA,ECECU,EEEST,EGEGY,EHESH,ERERI,ESESP,ETETH,FIFIN,FJFJI,FKFLK,FMFSM,FOFRO,FRFRA,FXFXX,GAGAB,GBGBR,GDGRD,GEGEO,GFGUF,GHGHA,GIGIB,GLGRL,GMGMB,GNGIN,GPGLP,GQGNQ,GRGRC,GSSGS,GTGTM,GUGUM,GWGNB,GYGUY,HKHKG,HMHMD,HNHND,HRHRV,HTHTI,HUHUN,IDIDN,IEIRL,ILISR,ININD,IOIOT,IQIRQ,IRIRN,ISISL,ITITA,JMJAM,JOJOR,JPJPN,KEKEN,KGKGZ,KHKHM,KIKIR,KMCOM,KNKNA,KPPRK,KRKOR,KWKWT,KYCYM,KZKAZ,LALAO,LBLBN,LCLCA,LILIE,LKLKA,LRLBR,LSLSO,LTLTU,LULUX,LVLVA,LYLBY,MAMAR,MCMCO,MDMDA,MGMDG,MHMHL,MKMKD,MLMLI,MMMMR,MNMNG,MOMAC,MPMNP,MQMTQ,MRMRT,MSMSR,MTMLT,MUMUS,MVMDV,MWMWI,MXMEX,MYMYS,MZMOZ,NANAM,NCNCL,NENER,NFNFK,NGNGA,NINIC,NLNLD,NONOR,NPNPL,NRNRU,NUNIU,NZNZL,OMOMN,PAPAN,PEPER,PFPYF,PGPNG,PHPHL,PKPAK,PLPOL,PMSPM,PNPCN,PRPRI,PTPRT,PWPLW,PYPRY,QAQAT,REREU,ROROM,RURUS,RWRWA,SASAU,SBSLB,SCSYC,SDSDN,SESWE,SGSGP,SHSHN,SISVN,SJSJM,SKSVK,SLSLE,SMSMR,SNSEN,SOSOM,SRSUR,STSTP,SVSLV,SYSYR,SZSWZ,TCTCA,TDTCD,TFATF,TGTGO,THTHA,TJTJK,TKTKL,TMTKM,TNTUN,TOTON,TPTMP,TRTUR,TTTTO,TVTUV,TWTWN,TZTZA,UAUKR,UGUGA,UMUMI,USUSA,UYURY,UZUZB,VAVAT,VCVCT,VEVEN,VGVGB,VIVIR,VNVNM,VUVUT,WFWLF,WSWSM,YEYEM,YTMYT,YUYUG,ZAZAF,ZMZMB,ZRZAR,ZWZWE".substring(var0 * 6 + 1, var0 * 6 + 3);
  91.          }
  92.       }
  93.  
  94.       String[] var1 = new String[isoCountries.length];
  95.       System.arraycopy(isoCountries, 0, var1, 0, isoCountries.length);
  96.       return var1;
  97.    }
  98.  
  99.    public static String[] getISOLanguages() {
  100.       if (isoLanguages == null) {
  101.          isoLanguages = new String[",aaaar,ababk,afafr,amamh,arara,asasm,ayaym,azaze,babak,bebel,bgbul,bhbih,bibis,bnben,bobod,brbre,cacat,cocos,csces,cycym,dadan,dedeu,dzdzo,elell,eneng,eoepo,esspa,etest,eueus,fafas,fifin,fjfij,fofao,frfra,fyfry,gagai,gdgdh,glglg,gngrn,guguj,hahau,heheb,hihin,hrhrv,huhun,hyhye,iaina,idind,ieile,ikipk,inind,isisl,itita,iuiku,iwheb,jajpn,jiyid,jwjaw,kakat,kkkaz,klkal,kmkhm,knkan,kokor,kskas,kukur,kykir,lalat,lnlin,lolao,ltlit,lvlav,mgmlg,mimri,mkmkd,mlmal,mnmon,momol,mrmar,msmsa,mtmlt,mymya,nanau,nenep,nlnld,nonor,ococi,omorm,orori,papan,plpol,pspus,ptpor,quque,rmroh,rnrun,roron,rurus,rwkin,sasan,sdsnd,sgsag,shsrp,sisin,skslk,slslv,smsmo,snsna,sosom,sqsqi,srsrp,ssssw,stsot,susun,svswe,swswa,tatam,tetel,tgtgk,ththa,titir,tktuk,tltgl,tntsn,toton,trtur,tstso,tttat,twtwi,uguig,ukukr,ururd,uzuzb,vivie,vovol,wowol,xhxho,yiyid,yoyor,zazha,zhzho,zuzul".length() / 6];
  102.  
  103.          for(int var0 = 0; var0 < isoLanguages.length; ++var0) {
  104.             isoLanguages[var0] = ",aaaar,ababk,afafr,amamh,arara,asasm,ayaym,azaze,babak,bebel,bgbul,bhbih,bibis,bnben,bobod,brbre,cacat,cocos,csces,cycym,dadan,dedeu,dzdzo,elell,eneng,eoepo,esspa,etest,eueus,fafas,fifin,fjfij,fofao,frfra,fyfry,gagai,gdgdh,glglg,gngrn,guguj,hahau,heheb,hihin,hrhrv,huhun,hyhye,iaina,idind,ieile,ikipk,inind,isisl,itita,iuiku,iwheb,jajpn,jiyid,jwjaw,kakat,kkkaz,klkal,kmkhm,knkan,kokor,kskas,kukur,kykir,lalat,lnlin,lolao,ltlit,lvlav,mgmlg,mimri,mkmkd,mlmal,mnmon,momol,mrmar,msmsa,mtmlt,mymya,nanau,nenep,nlnld,nonor,ococi,omorm,orori,papan,plpol,pspus,ptpor,quque,rmroh,rnrun,roron,rurus,rwkin,sasan,sdsnd,sgsag,shsrp,sisin,skslk,slslv,smsmo,snsna,sosom,sqsqi,srsrp,ssssw,stsot,susun,svswe,swswa,tatam,tetel,tgtgk,ththa,titir,tktuk,tltgl,tntsn,toton,trtur,tstso,tttat,twtwi,uguig,ukukr,ururd,uzuzb,vivie,vovol,wowol,xhxho,yiyid,yoyor,zazha,zhzho,zuzul".substring(var0 * 6 + 1, var0 * 6 + 3);
  105.          }
  106.       }
  107.  
  108.       String[] var1 = new String[isoLanguages.length];
  109.       System.arraycopy(isoLanguages, 0, var1, 0, isoLanguages.length);
  110.       return var1;
  111.    }
  112.  
  113.    static String[] getLanguagesForCountry(String var0) {
  114.       if (ctry2LangMapping == null) {
  115.          ctry2LangMapping = new Hashtable();
  116.  
  117.          int var2;
  118.          for(int var1 = 0; var1 < "ADfresAEarenAFpsAGenAIrnALsqAMhyruANnlenAOptAResASensmATdeAUenAWnlenAZazhyruBAsrshhrslmksqBBenBDbnhibhenBEfrnldeBFfrBGbgtrBHarenBIrnfrswBJfrBMenBNmsenzhBOesayquBRptBSenBTdzenneBVnoBWentnBYberuBZenesCAenfrCCenCFfrsgCGfrCHfrdeitrmCIfrCKmienCLesCMenfrCNzhboCOesCResCUesCVptCXenCYeltrenCZcsskDEdeDJarfrsoDKdaDMenfrDOesDZarfrECesquEEetruEGarenfrEHarfritERamtiarenitESeseucaglETamarenFIfisvFJenfjhiFKenFMenFOfodaFRfreubrcoFXfrGAfrGBengdcyGDenfrGEkahyruGFfrGHenGIenesGLdaikklGMenwoGNfrGPfrenGQesGRelGTesGUenGWptGYenhiurHKzhenHNesHRhrHTfrHUhuIDinennlIEengaILiwarjiINhienguknksmlmrneorpasatateIOenIQarkutkIRfaarkuISisITitfrdeJMenJOarJPjaKEenswKGkyKHkmKIenKMfrarKNenKPkoKRkoKWarenKYenKZkkruLAlofrLBarenfrLCenfrLIdeLKtasienLRenLSstenLTltruplLUfrdeLVlvltruLYarenitMAarfresMCfrenitMDmorobgMGmgenfrMKmkshtrMLfrMMmyMNmnruMOzhptMQfrMRarfrMSenMTmtenitMUenfrhiMWenMXesMYmsenMZptNAenafdeNEfrhaNFenNGenhayoNIesNLnlfyNOnoNPneNRnaenNUenNZenmiOMarenPAesenPEesquayPFfrPGenPHentlesPKurenpspasdPLplPMfrenPNenPResenPTptPWenPYesgnQAarenREfrtaROrohuRUruRWenfrrwSAarSBenSCenfrSDarsuSEsvSGzhenmstaSHenSIslSJnoSKskhuplshSLenSMitSNfrSOarenitsoSRnleneshiSTptSVesSYarSZenssTCenTDfrarTFfrTGfrTHthTJtgruuzTKenmiTMtkruTNarTOentoTRtrkuTTenTVenTWzhTZenswUAukruUGenswUMenUSenesUYesUZuzruVAlaitVCenVEesVGenVIenVNvizhfrVUenfrbiWFfrWSensmYEarYTfrmgswYUsrshmkhuZAafenZMenZRfrswZWensn".length(); var1 = var2) {
  119.             String var3 = "ADfresAEarenAFpsAGenAIrnALsqAMhyruANnlenAOptAResASensmATdeAUenAWnlenAZazhyruBAsrshhrslmksqBBenBDbnhibhenBEfrnldeBFfrBGbgtrBHarenBIrnfrswBJfrBMenBNmsenzhBOesayquBRptBSenBTdzenneBVnoBWentnBYberuBZenesCAenfrCCenCFfrsgCGfrCHfrdeitrmCIfrCKmienCLesCMenfrCNzhboCOesCResCUesCVptCXenCYeltrenCZcsskDEdeDJarfrsoDKdaDMenfrDOesDZarfrECesquEEetruEGarenfrEHarfritERamtiarenitESeseucaglETamarenFIfisvFJenfjhiFKenFMenFOfodaFRfreubrcoFXfrGAfrGBengdcyGDenfrGEkahyruGFfrGHenGIenesGLdaikklGMenwoGNfrGPfrenGQesGRelGTesGUenGWptGYenhiurHKzhenHNesHRhrHTfrHUhuIDinennlIEengaILiwarjiINhienguknksmlmrneorpasatateIOenIQarkutkIRfaarkuISisITitfrdeJMenJOarJPjaKEenswKGkyKHkmKIenKMfrarKNenKPkoKRkoKWarenKYenKZkkruLAlofrLBarenfrLCenfrLIdeLKtasienLRenLSstenLTltruplLUfrdeLVlvltruLYarenitMAarfresMCfrenitMDmorobgMGmgenfrMKmkshtrMLfrMMmyMNmnruMOzhptMQfrMRarfrMSenMTmtenitMUenfrhiMWenMXesMYmsenMZptNAenafdeNEfrhaNFenNGenhayoNIesNLnlfyNOnoNPneNRnaenNUenNZenmiOMarenPAesenPEesquayPFfrPGenPHentlesPKurenpspasdPLplPMfrenPNenPResenPTptPWenPYesgnQAarenREfrtaROrohuRUruRWenfrrwSAarSBenSCenfrSDarsuSEsvSGzhenmstaSHenSIslSJnoSKskhuplshSLenSMitSNfrSOarenitsoSRnleneshiSTptSVesSYarSZenssTCenTDfrarTFfrTGfrTHthTJtgruuzTKenmiTMtkruTNarTOentoTRtrkuTTenTVenTWzhTZenswUAukruUGenswUMenUSenesUYesUZuzruVAlaitVCenVEesVGenVIenVNvizhfrVUenfrbiWFfrWSensmYEarYTfrmgswYUsrshmkhuZAafenZMenZRfrswZWensn".substring(var1, var1 + 2);
  120.             var1 += 2;
  121.  
  122.             for(var2 = var1; var2 < "ADfresAEarenAFpsAGenAIrnALsqAMhyruANnlenAOptAResASensmATdeAUenAWnlenAZazhyruBAsrshhrslmksqBBenBDbnhibhenBEfrnldeBFfrBGbgtrBHarenBIrnfrswBJfrBMenBNmsenzhBOesayquBRptBSenBTdzenneBVnoBWentnBYberuBZenesCAenfrCCenCFfrsgCGfrCHfrdeitrmCIfrCKmienCLesCMenfrCNzhboCOesCResCUesCVptCXenCYeltrenCZcsskDEdeDJarfrsoDKdaDMenfrDOesDZarfrECesquEEetruEGarenfrEHarfritERamtiarenitESeseucaglETamarenFIfisvFJenfjhiFKenFMenFOfodaFRfreubrcoFXfrGAfrGBengdcyGDenfrGEkahyruGFfrGHenGIenesGLdaikklGMenwoGNfrGPfrenGQesGRelGTesGUenGWptGYenhiurHKzhenHNesHRhrHTfrHUhuIDinennlIEengaILiwarjiINhienguknksmlmrneorpasatateIOenIQarkutkIRfaarkuISisITitfrdeJMenJOarJPjaKEenswKGkyKHkmKIenKMfrarKNenKPkoKRkoKWarenKYenKZkkruLAlofrLBarenfrLCenfrLIdeLKtasienLRenLSstenLTltruplLUfrdeLVlvltruLYarenitMAarfresMCfrenitMDmorobgMGmgenfrMKmkshtrMLfrMMmyMNmnruMOzhptMQfrMRarfrMSenMTmtenitMUenfrhiMWenMXesMYmsenMZptNAenafdeNEfrhaNFenNGenhayoNIesNLnlfyNOnoNPneNRnaenNUenNZenmiOMarenPAesenPEesquayPFfrPGenPHentlesPKurenpspasdPLplPMfrenPNenPResenPTptPWenPYesgnQAarenREfrtaROrohuRUruRWenfrrwSAarSBenSCenfrSDarsuSEsvSGzhenmstaSHenSIslSJnoSKskhuplshSLenSMitSNfrSOarenitsoSRnleneshiSTptSVesSYarSZenssTCenTDfrarTFfrTGfrTHthTJtgruuzTKenmiTMtkruTNarTOentoTRtrkuTTenTVenTWzhTZenswUAukruUGenswUMenUSenesUYesUZuzruVAlaitVCenVEesVGenVIenVNvizhfrVUenfrbiWFfrWSensmYEarYTfrmgswYUsrshmkhuZAafenZMenZRfrswZWensn".length() && !Character.isUpperCase("ADfresAEarenAFpsAGenAIrnALsqAMhyruANnlenAOptAResASensmATdeAUenAWnlenAZazhyruBAsrshhrslmksqBBenBDbnhibhenBEfrnldeBFfrBGbgtrBHarenBIrnfrswBJfrBMenBNmsenzhBOesayquBRptBSenBTdzenneBVnoBWentnBYberuBZenesCAenfrCCenCFfrsgCGfrCHfrdeitrmCIfrCKmienCLesCMenfrCNzhboCOesCResCUesCVptCXenCYeltrenCZcsskDEdeDJarfrsoDKdaDMenfrDOesDZarfrECesquEEetruEGarenfrEHarfritERamtiarenitESeseucaglETamarenFIfisvFJenfjhiFKenFMenFOfodaFRfreubrcoFXfrGAfrGBengdcyGDenfrGEkahyruGFfrGHenGIenesGLdaikklGMenwoGNfrGPfrenGQesGRelGTesGUenGWptGYenhiurHKzhenHNesHRhrHTfrHUhuIDinennlIEengaILiwarjiINhienguknksmlmrneorpasatateIOenIQarkutkIRfaarkuISisITitfrdeJMenJOarJPjaKEenswKGkyKHkmKIenKMfrarKNenKPkoKRkoKWarenKYenKZkkruLAlofrLBarenfrLCenfrLIdeLKtasienLRenLSstenLTltruplLUfrdeLVlvltruLYarenitMAarfresMCfrenitMDmorobgMGmgenfrMKmkshtrMLfrMMmyMNmnruMOzhptMQfrMRarfrMSenMTmtenitMUenfrhiMWenMXesMYmsenMZptNAenafdeNEfrhaNFenNGenhayoNIesNLnlfyNOnoNPneNRnaenNUenNZenmiOMarenPAesenPEesquayPFfrPGenPHentlesPKurenpspasdPLplPMfrenPNenPResenPTptPWenPYesgnQAarenREfrtaROrohuRUruRWenfrrwSAarSBenSCenfrSDarsuSEsvSGzhenmstaSHenSIslSJnoSKskhuplshSLenSMitSNfrSOarenitsoSRnleneshiSTptSVesSYarSZenssTCenTDfrarTFfrTGfrTHthTJtgruuzTKenmiTMtkruTNarTOentoTRtrkuTTenTVenTWzhTZenswUAukruUGenswUMenUSenesUYesUZuzruVAlaitVCenVEesVGenVIenVNvizhfrVUenfrbiWFfrWSensmYEarYTfrmgswYUsrshmkhuZAafenZMenZRfrswZWensn".charAt(var2)); var2 += 2) {
  123.             }
  124.  
  125.             String var4 = "ADfresAEarenAFpsAGenAIrnALsqAMhyruANnlenAOptAResASensmATdeAUenAWnlenAZazhyruBAsrshhrslmksqBBenBDbnhibhenBEfrnldeBFfrBGbgtrBHarenBIrnfrswBJfrBMenBNmsenzhBOesayquBRptBSenBTdzenneBVnoBWentnBYberuBZenesCAenfrCCenCFfrsgCGfrCHfrdeitrmCIfrCKmienCLesCMenfrCNzhboCOesCResCUesCVptCXenCYeltrenCZcsskDEdeDJarfrsoDKdaDMenfrDOesDZarfrECesquEEetruEGarenfrEHarfritERamtiarenitESeseucaglETamarenFIfisvFJenfjhiFKenFMenFOfodaFRfreubrcoFXfrGAfrGBengdcyGDenfrGEkahyruGFfrGHenGIenesGLdaikklGMenwoGNfrGPfrenGQesGRelGTesGUenGWptGYenhiurHKzhenHNesHRhrHTfrHUhuIDinennlIEengaILiwarjiINhienguknksmlmrneorpasatateIOenIQarkutkIRfaarkuISisITitfrdeJMenJOarJPjaKEenswKGkyKHkmKIenKMfrarKNenKPkoKRkoKWarenKYenKZkkruLAlofrLBarenfrLCenfrLIdeLKtasienLRenLSstenLTltruplLUfrdeLVlvltruLYarenitMAarfresMCfrenitMDmorobgMGmgenfrMKmkshtrMLfrMMmyMNmnruMOzhptMQfrMRarfrMSenMTmtenitMUenfrhiMWenMXesMYmsenMZptNAenafdeNEfrhaNFenNGenhayoNIesNLnlfyNOnoNPneNRnaenNUenNZenmiOMarenPAesenPEesquayPFfrPGenPHentlesPKurenpspasdPLplPMfrenPNenPResenPTptPWenPYesgnQAarenREfrtaROrohuRUruRWenfrrwSAarSBenSCenfrSDarsuSEsvSGzhenmstaSHenSIslSJnoSKskhuplshSLenSMitSNfrSOarenitsoSRnleneshiSTptSVesSYarSZenssTCenTDfrarTFfrTGfrTHthTJtgruuzTKenmiTMtkruTNarTOentoTRtrkuTTenTVenTWzhTZenswUAukruUGenswUMenUSenesUYesUZuzruVAlaitVCenVEesVGenVIenVNvizhfrVUenfrbiWFfrWSensmYEarYTfrmgswYUsrshmkhuZAafenZMenZRfrswZWensn".substring(var1, var2);
  126.             String[] var5 = new String[var4.length() / 2];
  127.  
  128.             for(int var6 = 0; var6 < var5.length; ++var6) {
  129.                var5[var6] = var4.substring(var6 * 2, var6 * 2 + 2);
  130.             }
  131.  
  132.             ctry2LangMapping.put(var3, var5);
  133.          }
  134.       }
  135.  
  136.       String[] var8 = (String[])ctry2LangMapping.get(var0);
  137.       if (var8 == null) {
  138.          var8 = new String[0];
  139.       }
  140.  
  141.       return var8;
  142.    }
  143.  
  144.    public String getLanguage() {
  145.       return this.language;
  146.    }
  147.  
  148.    public String getCountry() {
  149.       return this.country;
  150.    }
  151.  
  152.    public String getVariant() {
  153.       return this.variant;
  154.    }
  155.  
  156.    public final String toString() {
  157.       boolean var1 = this.language.length() != 0;
  158.       boolean var2 = this.country.length() != 0;
  159.       boolean var3 = this.variant.length() != 0;
  160.       StringBuffer var4 = new StringBuffer(this.language);
  161.       if (var2 || var1 && var3) {
  162.          var4.append('_').append(this.country);
  163.       }
  164.  
  165.       if (var3 && (var1 || var2)) {
  166.          var4.append('_').append(this.variant);
  167.       }
  168.  
  169.       return var4.toString();
  170.    }
  171.  
  172.    public String getISO3Language() throws MissingResourceException {
  173.       int var1 = this.language.length();
  174.       if (var1 == 0) {
  175.          return "";
  176.       } else {
  177.          int var2 = ",aaaar,ababk,afafr,amamh,arara,asasm,ayaym,azaze,babak,bebel,bgbul,bhbih,bibis,bnben,bobod,brbre,cacat,cocos,csces,cycym,dadan,dedeu,dzdzo,elell,eneng,eoepo,esspa,etest,eueus,fafas,fifin,fjfij,fofao,frfra,fyfry,gagai,gdgdh,glglg,gngrn,guguj,hahau,heheb,hihin,hrhrv,huhun,hyhye,iaina,idind,ieile,ikipk,inind,isisl,itita,iuiku,iwheb,jajpn,jiyid,jwjaw,kakat,kkkaz,klkal,kmkhm,knkan,kokor,kskas,kukur,kykir,lalat,lnlin,lolao,ltlit,lvlav,mgmlg,mimri,mkmkd,mlmal,mnmon,momol,mrmar,msmsa,mtmlt,mymya,nanau,nenep,nlnld,nonor,ococi,omorm,orori,papan,plpol,pspus,ptpor,quque,rmroh,rnrun,roron,rurus,rwkin,sasan,sdsnd,sgsag,shsrp,sisin,skslk,slslv,smsmo,snsna,sosom,sqsqi,srsrp,ssssw,stsot,susun,svswe,swswa,tatam,tetel,tgtgk,ththa,titir,tktuk,tltgl,tntsn,toton,trtur,tstso,tttat,twtwi,uguig,ukukr,ururd,uzuzb,vivie,vovol,wowol,xhxho,yiyid,yoyor,zazha,zhzho,zuzul".indexOf("," + this.language);
  178.          if (var2 != -1 && var1 == 2) {
  179.             return ",aaaar,ababk,afafr,amamh,arara,asasm,ayaym,azaze,babak,bebel,bgbul,bhbih,bibis,bnben,bobod,brbre,cacat,cocos,csces,cycym,dadan,dedeu,dzdzo,elell,eneng,eoepo,esspa,etest,eueus,fafas,fifin,fjfij,fofao,frfra,fyfry,gagai,gdgdh,glglg,gngrn,guguj,hahau,heheb,hihin,hrhrv,huhun,hyhye,iaina,idind,ieile,ikipk,inind,isisl,itita,iuiku,iwheb,jajpn,jiyid,jwjaw,kakat,kkkaz,klkal,kmkhm,knkan,kokor,kskas,kukur,kykir,lalat,lnlin,lolao,ltlit,lvlav,mgmlg,mimri,mkmkd,mlmal,mnmon,momol,mrmar,msmsa,mtmlt,mymya,nanau,nenep,nlnld,nonor,ococi,omorm,orori,papan,plpol,pspus,ptpor,quque,rmroh,rnrun,roron,rurus,rwkin,sasan,sdsnd,sgsag,shsrp,sisin,skslk,slslv,smsmo,snsna,sosom,sqsqi,srsrp,ssssw,stsot,susun,svswe,swswa,tatam,tetel,tgtgk,ththa,titir,tktuk,tltgl,tntsn,toton,trtur,tstso,tttat,twtwi,uguig,ukukr,ururd,uzuzb,vivie,vovol,wowol,xhxho,yiyid,yoyor,zazha,zhzho,zuzul".substring(var2 + 3, var2 + 6);
  180.          } else {
  181.             throw new MissingResourceException("Couldn't find 3-letter language code for " + this.language, "LocaleElements_" + this.toString(), "ShortLanguage");
  182.          }
  183.       }
  184.    }
  185.  
  186.    public String getISO3Country() throws MissingResourceException {
  187.       int var1 = this.country.length();
  188.       if (var1 == 0) {
  189.          return "";
  190.       } else {
  191.          int var2 = ",ADAND,AEARE,AFAFG,AGATG,AIAIA,ALALB,AMARM,ANANT,AOAGO,AQATA,ARARG,ASASM,ATAUT,AUAUS,AWABW,AZAZE,BABIH,BBBRB,BDBGD,BEBEL,BFBFA,BGBGR,BHBHR,BIBDI,BJBEN,BMBMU,BNBRN,BOBOL,BRBRA,BSBHS,BTBTN,BVBVT,BWBWA,BYBLR,BZBLZ,CACAN,CCCCK,CFCAF,CGCOG,CHCHE,CICIV,CKCOK,CLCHL,CMCMR,CNCHN,COCOL,CRCRI,CUCUB,CVCPV,CXCXR,CYCYP,CZCZE,DEDEU,DJDJI,DKDNK,DMDMA,DODOM,DZDZA,ECECU,EEEST,EGEGY,EHESH,ERERI,ESESP,ETETH,FIFIN,FJFJI,FKFLK,FMFSM,FOFRO,FRFRA,FXFXX,GAGAB,GBGBR,GDGRD,GEGEO,GFGUF,GHGHA,GIGIB,GLGRL,GMGMB,GNGIN,GPGLP,GQGNQ,GRGRC,GSSGS,GTGTM,GUGUM,GWGNB,GYGUY,HKHKG,HMHMD,HNHND,HRHRV,HTHTI,HUHUN,IDIDN,IEIRL,ILISR,ININD,IOIOT,IQIRQ,IRIRN,ISISL,ITITA,JMJAM,JOJOR,JPJPN,KEKEN,KGKGZ,KHKHM,KIKIR,KMCOM,KNKNA,KPPRK,KRKOR,KWKWT,KYCYM,KZKAZ,LALAO,LBLBN,LCLCA,LILIE,LKLKA,LRLBR,LSLSO,LTLTU,LULUX,LVLVA,LYLBY,MAMAR,MCMCO,MDMDA,MGMDG,MHMHL,MKMKD,MLMLI,MMMMR,MNMNG,MOMAC,MPMNP,MQMTQ,MRMRT,MSMSR,MTMLT,MUMUS,MVMDV,MWMWI,MXMEX,MYMYS,MZMOZ,NANAM,NCNCL,NENER,NFNFK,NGNGA,NINIC,NLNLD,NONOR,NPNPL,NRNRU,NUNIU,NZNZL,OMOMN,PAPAN,PEPER,PFPYF,PGPNG,PHPHL,PKPAK,PLPOL,PMSPM,PNPCN,PRPRI,PTPRT,PWPLW,PYPRY,QAQAT,REREU,ROROM,RURUS,RWRWA,SASAU,SBSLB,SCSYC,SDSDN,SESWE,SGSGP,SHSHN,SISVN,SJSJM,SKSVK,SLSLE,SMSMR,SNSEN,SOSOM,SRSUR,STSTP,SVSLV,SYSYR,SZSWZ,TCTCA,TDTCD,TFATF,TGTGO,THTHA,TJTJK,TKTKL,TMTKM,TNTUN,TOTON,TPTMP,TRTUR,TTTTO,TVTUV,TWTWN,TZTZA,UAUKR,UGUGA,UMUMI,USUSA,UYURY,UZUZB,VAVAT,VCVCT,VEVEN,VGVGB,VIVIR,VNVNM,VUVUT,WFWLF,WSWSM,YEYEM,YTMYT,YUYUG,ZAZAF,ZMZMB,ZRZAR,ZWZWE".indexOf("," + this.country);
  192.          if (var2 != -1 && var1 == 2) {
  193.             return ",ADAND,AEARE,AFAFG,AGATG,AIAIA,ALALB,AMARM,ANANT,AOAGO,AQATA,ARARG,ASASM,ATAUT,AUAUS,AWABW,AZAZE,BABIH,BBBRB,BDBGD,BEBEL,BFBFA,BGBGR,BHBHR,BIBDI,BJBEN,BMBMU,BNBRN,BOBOL,BRBRA,BSBHS,BTBTN,BVBVT,BWBWA,BYBLR,BZBLZ,CACAN,CCCCK,CFCAF,CGCOG,CHCHE,CICIV,CKCOK,CLCHL,CMCMR,CNCHN,COCOL,CRCRI,CUCUB,CVCPV,CXCXR,CYCYP,CZCZE,DEDEU,DJDJI,DKDNK,DMDMA,DODOM,DZDZA,ECECU,EEEST,EGEGY,EHESH,ERERI,ESESP,ETETH,FIFIN,FJFJI,FKFLK,FMFSM,FOFRO,FRFRA,FXFXX,GAGAB,GBGBR,GDGRD,GEGEO,GFGUF,GHGHA,GIGIB,GLGRL,GMGMB,GNGIN,GPGLP,GQGNQ,GRGRC,GSSGS,GTGTM,GUGUM,GWGNB,GYGUY,HKHKG,HMHMD,HNHND,HRHRV,HTHTI,HUHUN,IDIDN,IEIRL,ILISR,ININD,IOIOT,IQIRQ,IRIRN,ISISL,ITITA,JMJAM,JOJOR,JPJPN,KEKEN,KGKGZ,KHKHM,KIKIR,KMCOM,KNKNA,KPPRK,KRKOR,KWKWT,KYCYM,KZKAZ,LALAO,LBLBN,LCLCA,LILIE,LKLKA,LRLBR,LSLSO,LTLTU,LULUX,LVLVA,LYLBY,MAMAR,MCMCO,MDMDA,MGMDG,MHMHL,MKMKD,MLMLI,MMMMR,MNMNG,MOMAC,MPMNP,MQMTQ,MRMRT,MSMSR,MTMLT,MUMUS,MVMDV,MWMWI,MXMEX,MYMYS,MZMOZ,NANAM,NCNCL,NENER,NFNFK,NGNGA,NINIC,NLNLD,NONOR,NPNPL,NRNRU,NUNIU,NZNZL,OMOMN,PAPAN,PEPER,PFPYF,PGPNG,PHPHL,PKPAK,PLPOL,PMSPM,PNPCN,PRPRI,PTPRT,PWPLW,PYPRY,QAQAT,REREU,ROROM,RURUS,RWRWA,SASAU,SBSLB,SCSYC,SDSDN,SESWE,SGSGP,SHSHN,SISVN,SJSJM,SKSVK,SLSLE,SMSMR,SNSEN,SOSOM,SRSUR,STSTP,SVSLV,SYSYR,SZSWZ,TCTCA,TDTCD,TFATF,TGTGO,THTHA,TJTJK,TKTKL,TMTKM,TNTUN,TOTON,TPTMP,TRTUR,TTTTO,TVTUV,TWTWN,TZTZA,UAUKR,UGUGA,UMUMI,USUSA,UYURY,UZUZB,VAVAT,VCVCT,VEVEN,VGVGB,VIVIR,VNVNM,VUVUT,WFWLF,WSWSM,YEYEM,YTMYT,YUYUG,ZAZAF,ZMZMB,ZRZAR,ZWZWE".substring(var2 + 3, var2 + 6);
  194.          } else {
  195.             throw new MissingResourceException("Couldn't find 3-letter country code for " + this.country, "LocaleElements_" + this.toString(), "ShortCountry");
  196.          }
  197.       }
  198.    }
  199.  
  200.    public final String getDisplayLanguage() {
  201.       return this.getDisplayLanguage(getDefault());
  202.    }
  203.  
  204.    public String getDisplayLanguage(Locale var1) {
  205.       String var2 = this.language;
  206.       if (var2.length() == 0) {
  207.          return "";
  208.       } else {
  209.          Locale var3 = (Locale)var1.clone();
  210.          String var4 = null;
  211.          int var5 = 0;
  212.          boolean var6 = false;
  213.          if (var3.variant.length() == 0) {
  214.             var5 = 1;
  215.          }
  216.  
  217.          if (var3.country.length() == 0) {
  218.             var5 = 2;
  219.          }
  220.  
  221.          while(!var6) {
  222.             try {
  223.                ResourceBundle var7 = ResourceBundle.getBundle("java.text.resources.LocaleElements", var3);
  224.                var4 = this.findStringMatch((String[][])var7.getObject("Languages"), var2, var2);
  225.                if (var4.length() != 0) {
  226.                   var6 = true;
  227.                }
  228.             } catch (Exception var8) {
  229.             }
  230.  
  231.             if (!var6) {
  232.                switch (var5) {
  233.                   case 0:
  234.                      var3.variant = "";
  235.                      break;
  236.                   case 1:
  237.                      var3.country = "";
  238.                      break;
  239.                   case 2:
  240.                      var3 = getDefault();
  241.                      break;
  242.                   case 3:
  243.                      var3 = new Locale("", "", "");
  244.                      break;
  245.                   default:
  246.                      return var2;
  247.                }
  248.  
  249.                ++var5;
  250.             }
  251.          }
  252.  
  253.          return var4;
  254.       }
  255.    }
  256.  
  257.    public final String getDisplayCountry() {
  258.       return this.getDisplayCountry(getDefault());
  259.    }
  260.  
  261.    public String getDisplayCountry(Locale var1) {
  262.       String var2 = this.country;
  263.       if (var2.length() == 0) {
  264.          return "";
  265.       } else {
  266.          Locale var3 = (Locale)var1.clone();
  267.          String var4 = null;
  268.          int var5 = 0;
  269.          boolean var6 = false;
  270.          if (var3.variant.length() == 0) {
  271.             var5 = 1;
  272.          }
  273.  
  274.          if (var3.country.length() == 0) {
  275.             var5 = 2;
  276.          }
  277.  
  278.          while(!var6) {
  279.             try {
  280.                ResourceBundle var7 = ResourceBundle.getBundle("java.text.resources.LocaleElements", var3);
  281.                var4 = this.findStringMatch((String[][])var7.getObject("Countries"), var2, var2);
  282.                if (var4.length() != 0) {
  283.                   var6 = true;
  284.                }
  285.             } catch (Exception var8) {
  286.             }
  287.  
  288.             if (!var6) {
  289.                switch (var5) {
  290.                   case 0:
  291.                      var3.variant = "";
  292.                      break;
  293.                   case 1:
  294.                      var3.country = "";
  295.                      break;
  296.                   case 2:
  297.                      var3 = getDefault();
  298.                      break;
  299.                   case 3:
  300.                      var3 = new Locale("", "", "");
  301.                      break;
  302.                   default:
  303.                      return var2;
  304.                }
  305.  
  306.                ++var5;
  307.             }
  308.          }
  309.  
  310.          return var4;
  311.       }
  312.    }
  313.  
  314.    public final String getDisplayVariant() {
  315.       return this.getDisplayVariant(getDefault());
  316.    }
  317.  
  318.    public String getDisplayVariant(Locale var1) {
  319.       if (this.variant.length() == 0) {
  320.          return "";
  321.       } else {
  322.          ResourceBundle var2 = ResourceBundle.getBundle("java.text.resources.LocaleElements", var1);
  323.          String[] var3 = this.getDisplayVariantArray(var2);
  324.  
  325.          String[] var4;
  326.          try {
  327.             var4 = (String[])var2.getObject("LocaleNamePatterns");
  328.          } catch (MissingResourceException var6) {
  329.             var4 = null;
  330.          }
  331.  
  332.          return formatList(var4, var3);
  333.       }
  334.    }
  335.  
  336.    public final String getDisplayName() {
  337.       return this.getDisplayName(getDefault());
  338.    }
  339.  
  340.    public String getDisplayName(Locale var1) {
  341.       ResourceBundle var2 = ResourceBundle.getBundle("java.text.resources.LocaleElements", var1);
  342.       String var3 = this.getDisplayLanguage(var1);
  343.       String var4 = this.getDisplayCountry(var1);
  344.       String[] var5 = this.getDisplayVariantArray(var2);
  345.  
  346.       String[] var6;
  347.       try {
  348.          var6 = (String[])var2.getObject("LocaleNamePatterns");
  349.       } catch (MissingResourceException var11) {
  350.          var6 = null;
  351.       }
  352.  
  353.       Object var7 = null;
  354.       Object var8 = null;
  355.       String var12;
  356.       String[] var13;
  357.       if (var3.length() != 0) {
  358.          var12 = var3;
  359.          if (var4.length() != 0) {
  360.             var13 = new String[var5.length + 1];
  361.             System.arraycopy(var5, 0, var13, 1, var5.length);
  362.             var13[0] = var4;
  363.          } else {
  364.             var13 = var5;
  365.          }
  366.       } else {
  367.          if (var4.length() == 0) {
  368.             return formatList(var6, var5);
  369.          }
  370.  
  371.          var12 = var4;
  372.          var13 = var5;
  373.       }
  374.  
  375.       Object[] var9 = new Object[]{new Integer(var13.length != 0 ? 2 : 1), var12, var13.length != 0 ? formatList(var6, var13) : null};
  376.       if (var6 != null) {
  377.          return (new MessageFormat(var6[0])).format(var9);
  378.       } else {
  379.          StringBuffer var10 = new StringBuffer();
  380.          var10.append((String)var9[1]);
  381.          if (var9.length > 2) {
  382.             var10.append(" (");
  383.             var10.append((String)var9[2]);
  384.             var10.append(")");
  385.          }
  386.  
  387.          return var10.toString();
  388.       }
  389.    }
  390.  
  391.    public Object clone() {
  392.       try {
  393.          Locale var1 = (Locale)super.clone();
  394.          return var1;
  395.       } catch (CloneNotSupportedException var2) {
  396.          throw new InternalError();
  397.       }
  398.    }
  399.  
  400.    public synchronized int hashCode() {
  401.       if (this.hashcode == -1) {
  402.          this.hashcode = this.language.hashCode() ^ this.country.hashCode() ^ this.variant.hashCode();
  403.       }
  404.  
  405.       return this.hashcode;
  406.    }
  407.  
  408.    public boolean equals(Object var1) {
  409.       if (this == var1) {
  410.          return true;
  411.       } else if (!(var1 instanceof Locale)) {
  412.          return false;
  413.       } else {
  414.          Locale var2 = (Locale)var1;
  415.          if (this.hashCode() != var2.hashCode()) {
  416.             return false;
  417.          } else if (this.language != var2.language) {
  418.             return false;
  419.          } else if (this.country != var2.country) {
  420.             return false;
  421.          } else {
  422.             return this.variant == var2.variant;
  423.          }
  424.       }
  425.    }
  426.  
  427.    private String[] getDisplayVariantArray(ResourceBundle var1) {
  428.       StringTokenizer var2 = new StringTokenizer(this.variant, "_");
  429.       String[] var3 = new String[var2.countTokens()];
  430.  
  431.       for(int var4 = 0; var4 < var3.length; ++var4) {
  432.          String var5 = var2.nextToken();
  433.  
  434.          try {
  435.             var3[var4] = (String)var1.getObject("%%" + var5);
  436.          } catch (MissingResourceException var7) {
  437.             var3[var4] = var5;
  438.          }
  439.       }
  440.  
  441.       return var3;
  442.    }
  443.  
  444.    private static String formatList(String[] var0, String[] var1) {
  445.       if (var0 == null) {
  446.          StringBuffer var5 = new StringBuffer();
  447.  
  448.          for(int var6 = 0; var6 < var1.length; ++var6) {
  449.             if (var6 > 0) {
  450.                var5.append(',');
  451.             }
  452.  
  453.             var5.append(var1[var6]);
  454.          }
  455.  
  456.          return var5.toString();
  457.       } else {
  458.          if (var1.length > 3) {
  459.             MessageFormat var2 = new MessageFormat(var0[2]);
  460.             var1 = composeList(var2, var1);
  461.          }
  462.  
  463.          Object[] var4 = new Object[var1.length + 1];
  464.          System.arraycopy(var1, 0, var4, 1, var1.length);
  465.          var4[0] = new Integer(var1.length);
  466.          MessageFormat var3 = new MessageFormat(var0[1]);
  467.          return ((Format)var3).format(var4);
  468.       }
  469.    }
  470.  
  471.    private static String[] composeList(MessageFormat var0, String[] var1) {
  472.       if (var1.length <= 3) {
  473.          return var1;
  474.       } else {
  475.          String[] var2 = new String[]{var1[0], var1[1]};
  476.          String var3 = ((Format)var0).format(var2);
  477.          String[] var4 = new String[var1.length - 1];
  478.          System.arraycopy(var1, 2, var4, 1, var4.length - 1);
  479.          var4[0] = var3;
  480.          return composeList(var0, var4);
  481.       }
  482.    }
  483.  
  484.    private void writeObject(ObjectOutputStream var1) throws IOException {
  485.       int var2 = this.hashcode;
  486.       this.hashcode = -1;
  487.       var1.defaultWriteObject();
  488.       this.hashcode = var2;
  489.    }
  490.  
  491.    private void readObject(ObjectInputStream var1) throws IOException, ClassNotFoundException {
  492.       var1.defaultReadObject();
  493.       this.hashcode = -1;
  494.       this.language = this.convertOldISOCodes(this.language);
  495.       this.country = this.country.intern();
  496.       this.variant = this.variant.intern();
  497.    }
  498.  
  499.    private String toLowerCase(String var1) {
  500.       char[] var2 = var1.toCharArray();
  501.  
  502.       for(int var3 = 0; var3 < var2.length; ++var3) {
  503.          var2[var3] = Character.toLowerCase(var2[var3]);
  504.       }
  505.  
  506.       return new String(var2);
  507.    }
  508.  
  509.    private String toUpperCase(String var1) {
  510.       char[] var2 = var1.toCharArray();
  511.  
  512.       for(int var3 = 0; var3 < var2.length; ++var3) {
  513.          var2[var3] = Character.toUpperCase(var2[var3]);
  514.       }
  515.  
  516.       return new String(var2);
  517.    }
  518.  
  519.    private String findStringMatch(String[][] var1, String var2, String var3) {
  520.       for(int var4 = 0; var4 < var1.length; ++var4) {
  521.          if (var2.equals(var1[var4][0])) {
  522.             return var1[var4][1];
  523.          }
  524.       }
  525.  
  526.       if (!var3.equals(var2)) {
  527.          for(int var5 = 0; var5 < var1.length; ++var5) {
  528.             if (var3.equals(var1[var5][0])) {
  529.                return var1[var5][1];
  530.             }
  531.          }
  532.       }
  533.  
  534.       if (!"EN".equals(var2) && "EN".equals(var3)) {
  535.          for(int var6 = 0; var6 < var1.length; ++var6) {
  536.             if ("EN".equals(var1[var6][0])) {
  537.                return var1[var6][1];
  538.             }
  539.          }
  540.       }
  541.  
  542.       return "";
  543.    }
  544.  
  545.    private String convertOldISOCodes(String var1) {
  546.       var1 = this.toLowerCase(var1).intern();
  547.       if (var1 == "he") {
  548.          return "iw";
  549.       } else if (var1 == "yi") {
  550.          return "ji";
  551.       } else {
  552.          return var1 == "id" ? "in" : var1;
  553.       }
  554.    }
  555.  
  556.    static {
  557.       String var0 = (String)AccessController.doPrivileged(new GetPropertyAction("user.language", "EN"));
  558.       String var1 = (String)AccessController.doPrivileged(new GetPropertyAction("user.region", ""));
  559.       String var2 = "";
  560.       int var3 = var1.indexOf(95);
  561.       if (var3 >= 0) {
  562.          var2 = var1.substring(var3 + 1);
  563.          var1 = var1.substring(0, var3);
  564.       }
  565.  
  566.       defaultLocale = new Locale(var0, var1, var2);
  567.       isoLanguages = null;
  568.       isoCountries = null;
  569.       ctry2LangMapping = null;
  570.    }
  571. }
  572.