mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2025-01-09 13:43:22 +00:00
2135 lines
66 KiB
Java
2135 lines
66 KiB
Java
package com.google.android.exoplayer2.upstream;
|
|
|
|
import android.content.Context;
|
|
import android.os.Handler;
|
|
import androidx.appcompat.app.AppCompatDelegate;
|
|
import androidx.compose.material3.MenuKt;
|
|
import androidx.compose.runtime.ComposerKt;
|
|
import androidx.constraintlayout.widget.ConstraintLayout;
|
|
import androidx.core.location.LocationRequestCompat;
|
|
import androidx.media3.container.MdtaMetadataEntry;
|
|
import com.alibaba.fastjson.parser.JSONLexer;
|
|
import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView;
|
|
import com.google.android.exoplayer2.upstream.BandwidthMeter;
|
|
import com.google.android.exoplayer2.util.Assertions;
|
|
import com.google.android.exoplayer2.util.Clock;
|
|
import com.google.android.exoplayer2.util.NetworkTypeObserver;
|
|
import com.google.android.exoplayer2.util.Util;
|
|
import com.google.common.base.Ascii;
|
|
import com.google.common.collect.ImmutableList;
|
|
import com.google.common.collect.ImmutableMap;
|
|
import com.google.zxing.client.result.ExpandedProductParsedResult;
|
|
import java.util.HashMap;
|
|
import java.util.Iterator;
|
|
import java.util.Map;
|
|
import kotlin.io.encoding.Base64;
|
|
import kotlin.text.Typography;
|
|
import kotlinx.coroutines.internal.LockFreeTaskQueueCore;
|
|
import okhttp3.internal.ws.WebSocketProtocol;
|
|
import tech.rabbit.r1systemupdater.model.UpdateEngineErrorCodes;
|
|
|
|
/* loaded from: classes2.dex */
|
|
public final class DefaultBandwidthMeter implements BandwidthMeter, TransferListener {
|
|
private static final int BYTES_TRANSFERRED_FOR_ESTIMATE = 524288;
|
|
private static final int COUNTRY_GROUP_INDEX_2G = 1;
|
|
private static final int COUNTRY_GROUP_INDEX_3G = 2;
|
|
private static final int COUNTRY_GROUP_INDEX_4G = 3;
|
|
private static final int COUNTRY_GROUP_INDEX_5G_NSA = 4;
|
|
private static final int COUNTRY_GROUP_INDEX_5G_SA = 5;
|
|
private static final int COUNTRY_GROUP_INDEX_WIFI = 0;
|
|
public static final long DEFAULT_INITIAL_BITRATE_ESTIMATE = 1000000;
|
|
public static final int DEFAULT_SLIDING_WINDOW_MAX_WEIGHT = 2000;
|
|
private static final int ELAPSED_MILLIS_FOR_ESTIMATE = 2000;
|
|
private static DefaultBandwidthMeter singletonInstance;
|
|
private long bitrateEstimate;
|
|
private final Clock clock;
|
|
private final BandwidthMeter.EventListener.EventDispatcher eventDispatcher;
|
|
private final ImmutableMap<Integer, Long> initialBitrateEstimates;
|
|
private long lastReportedBitrateEstimate;
|
|
private int networkType;
|
|
private int networkTypeOverride;
|
|
private boolean networkTypeOverrideSet;
|
|
private final boolean resetOnNetworkTypeChange;
|
|
private long sampleBytesTransferred;
|
|
private long sampleStartTimeMs;
|
|
private final SlidingPercentile slidingPercentile;
|
|
private int streamCount;
|
|
private long totalBytesTransferred;
|
|
private long totalElapsedTimeMs;
|
|
public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_WIFI = ImmutableList.of(4400000L, 3200000L, 2300000L, 1600000L, 810000L);
|
|
public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_2G = ImmutableList.of(1400000L, 990000L, 730000L, 510000L, 230000L);
|
|
public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_3G = ImmutableList.of(2100000L, 1400000L, 1000000L, 890000L, 640000L);
|
|
public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_4G = ImmutableList.of(2600000L, 1700000L, 1300000L, 1000000L, 700000L);
|
|
public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_5G_NSA = ImmutableList.of(5700000L, 3700000L, 2300000L, 1700000L, 990000L);
|
|
public static final ImmutableList<Long> DEFAULT_INITIAL_BITRATE_ESTIMATES_5G_SA = ImmutableList.of(2800000L, 1800000L, 1400000L, 1100000L, 870000L);
|
|
|
|
@Override // com.google.android.exoplayer2.upstream.BandwidthMeter
|
|
public TransferListener getTransferListener() {
|
|
return this;
|
|
}
|
|
|
|
@Override // com.google.android.exoplayer2.upstream.TransferListener
|
|
public void onTransferInitializing(DataSource dataSource, DataSpec dataSpec, boolean z) {
|
|
}
|
|
|
|
/* loaded from: classes2.dex */
|
|
public static final class Builder {
|
|
private Clock clock;
|
|
private final Context context;
|
|
private Map<Integer, Long> initialBitrateEstimates;
|
|
private boolean resetOnNetworkTypeChange;
|
|
private int slidingWindowMaxWeight;
|
|
|
|
public Builder setClock(Clock clock) {
|
|
this.clock = clock;
|
|
return this;
|
|
}
|
|
|
|
public Builder setResetOnNetworkTypeChange(boolean z) {
|
|
this.resetOnNetworkTypeChange = z;
|
|
return this;
|
|
}
|
|
|
|
public Builder setSlidingWindowMaxWeight(int i) {
|
|
this.slidingWindowMaxWeight = i;
|
|
return this;
|
|
}
|
|
|
|
public Builder(Context context) {
|
|
this.context = context == null ? null : context.getApplicationContext();
|
|
this.initialBitrateEstimates = getInitialBitrateEstimatesForCountry(Util.getCountryCode(context));
|
|
this.slidingWindowMaxWeight = 2000;
|
|
this.clock = Clock.DEFAULT;
|
|
this.resetOnNetworkTypeChange = true;
|
|
}
|
|
|
|
public Builder setInitialBitrateEstimate(long j) {
|
|
Iterator<Integer> it = this.initialBitrateEstimates.keySet().iterator();
|
|
while (it.hasNext()) {
|
|
setInitialBitrateEstimate(it.next().intValue(), j);
|
|
}
|
|
return this;
|
|
}
|
|
|
|
public Builder setInitialBitrateEstimate(int i, long j) {
|
|
this.initialBitrateEstimates.put(Integer.valueOf(i), Long.valueOf(j));
|
|
return this;
|
|
}
|
|
|
|
public Builder setInitialBitrateEstimate(String str) {
|
|
this.initialBitrateEstimates = getInitialBitrateEstimatesForCountry(Ascii.toUpperCase(str));
|
|
return this;
|
|
}
|
|
|
|
public DefaultBandwidthMeter build() {
|
|
return new DefaultBandwidthMeter(this.context, this.initialBitrateEstimates, this.slidingWindowMaxWeight, this.clock, this.resetOnNetworkTypeChange);
|
|
}
|
|
|
|
private static Map<Integer, Long> getInitialBitrateEstimatesForCountry(String str) {
|
|
int[] initialBitrateCountryGroupAssignment = DefaultBandwidthMeter.getInitialBitrateCountryGroupAssignment(str);
|
|
HashMap hashMap = new HashMap(8);
|
|
hashMap.put(0, 1000000L);
|
|
hashMap.put(2, DefaultBandwidthMeter.DEFAULT_INITIAL_BITRATE_ESTIMATES_WIFI.get(initialBitrateCountryGroupAssignment[0]));
|
|
hashMap.put(3, DefaultBandwidthMeter.DEFAULT_INITIAL_BITRATE_ESTIMATES_2G.get(initialBitrateCountryGroupAssignment[1]));
|
|
hashMap.put(4, DefaultBandwidthMeter.DEFAULT_INITIAL_BITRATE_ESTIMATES_3G.get(initialBitrateCountryGroupAssignment[2]));
|
|
hashMap.put(5, DefaultBandwidthMeter.DEFAULT_INITIAL_BITRATE_ESTIMATES_4G.get(initialBitrateCountryGroupAssignment[3]));
|
|
hashMap.put(10, DefaultBandwidthMeter.DEFAULT_INITIAL_BITRATE_ESTIMATES_5G_NSA.get(initialBitrateCountryGroupAssignment[4]));
|
|
hashMap.put(9, DefaultBandwidthMeter.DEFAULT_INITIAL_BITRATE_ESTIMATES_5G_SA.get(initialBitrateCountryGroupAssignment[5]));
|
|
hashMap.put(7, DefaultBandwidthMeter.DEFAULT_INITIAL_BITRATE_ESTIMATES_WIFI.get(initialBitrateCountryGroupAssignment[0]));
|
|
return hashMap;
|
|
}
|
|
}
|
|
|
|
public static synchronized DefaultBandwidthMeter getSingletonInstance(Context context) {
|
|
DefaultBandwidthMeter defaultBandwidthMeter;
|
|
synchronized (DefaultBandwidthMeter.class) {
|
|
if (singletonInstance == null) {
|
|
singletonInstance = new Builder(context).build();
|
|
}
|
|
defaultBandwidthMeter = singletonInstance;
|
|
}
|
|
return defaultBandwidthMeter;
|
|
}
|
|
|
|
@Deprecated
|
|
public DefaultBandwidthMeter() {
|
|
this(null, ImmutableMap.of(), 2000, Clock.DEFAULT, false);
|
|
}
|
|
|
|
private DefaultBandwidthMeter(Context context, Map<Integer, Long> map, int i, Clock clock, boolean z) {
|
|
this.initialBitrateEstimates = ImmutableMap.copyOf((Map) map);
|
|
this.eventDispatcher = new BandwidthMeter.EventListener.EventDispatcher();
|
|
this.slidingPercentile = new SlidingPercentile(i);
|
|
this.clock = clock;
|
|
this.resetOnNetworkTypeChange = z;
|
|
if (context != null) {
|
|
NetworkTypeObserver networkTypeObserver = NetworkTypeObserver.getInstance(context);
|
|
int networkType = networkTypeObserver.getNetworkType();
|
|
this.networkType = networkType;
|
|
this.bitrateEstimate = getInitialBitrateEstimateForNetworkType(networkType);
|
|
networkTypeObserver.register(new NetworkTypeObserver.Listener() { // from class: com.google.android.exoplayer2.upstream.DefaultBandwidthMeter$$ExternalSyntheticLambda0
|
|
@Override // com.google.android.exoplayer2.util.NetworkTypeObserver.Listener
|
|
public final void onNetworkTypeChanged(int i2) {
|
|
DefaultBandwidthMeter.this.onNetworkTypeChanged(i2);
|
|
}
|
|
});
|
|
return;
|
|
}
|
|
this.networkType = 0;
|
|
this.bitrateEstimate = getInitialBitrateEstimateForNetworkType(0);
|
|
}
|
|
|
|
public synchronized void setNetworkTypeOverride(int i) {
|
|
this.networkTypeOverride = i;
|
|
this.networkTypeOverrideSet = true;
|
|
onNetworkTypeChanged(i);
|
|
}
|
|
|
|
@Override // com.google.android.exoplayer2.upstream.BandwidthMeter
|
|
public synchronized long getBitrateEstimate() {
|
|
return this.bitrateEstimate;
|
|
}
|
|
|
|
@Override // com.google.android.exoplayer2.upstream.BandwidthMeter
|
|
public void addEventListener(Handler handler, BandwidthMeter.EventListener eventListener) {
|
|
Assertions.checkNotNull(handler);
|
|
Assertions.checkNotNull(eventListener);
|
|
this.eventDispatcher.addListener(handler, eventListener);
|
|
}
|
|
|
|
@Override // com.google.android.exoplayer2.upstream.BandwidthMeter
|
|
public void removeEventListener(BandwidthMeter.EventListener eventListener) {
|
|
this.eventDispatcher.removeListener(eventListener);
|
|
}
|
|
|
|
@Override // com.google.android.exoplayer2.upstream.TransferListener
|
|
public synchronized void onTransferStart(DataSource dataSource, DataSpec dataSpec, boolean z) {
|
|
if (isTransferAtFullNetworkSpeed(dataSpec, z)) {
|
|
if (this.streamCount == 0) {
|
|
this.sampleStartTimeMs = this.clock.elapsedRealtime();
|
|
}
|
|
this.streamCount++;
|
|
}
|
|
}
|
|
|
|
@Override // com.google.android.exoplayer2.upstream.TransferListener
|
|
public synchronized void onBytesTransferred(DataSource dataSource, DataSpec dataSpec, boolean z, int i) {
|
|
if (isTransferAtFullNetworkSpeed(dataSpec, z)) {
|
|
this.sampleBytesTransferred += i;
|
|
}
|
|
}
|
|
|
|
@Override // com.google.android.exoplayer2.upstream.TransferListener
|
|
public synchronized void onTransferEnd(DataSource dataSource, DataSpec dataSpec, boolean z) {
|
|
if (isTransferAtFullNetworkSpeed(dataSpec, z)) {
|
|
Assertions.checkState(this.streamCount > 0);
|
|
long elapsedRealtime = this.clock.elapsedRealtime();
|
|
int i = (int) (elapsedRealtime - this.sampleStartTimeMs);
|
|
this.totalElapsedTimeMs += i;
|
|
long j = this.totalBytesTransferred;
|
|
long j2 = this.sampleBytesTransferred;
|
|
this.totalBytesTransferred = j + j2;
|
|
if (i > 0) {
|
|
this.slidingPercentile.addSample((int) Math.sqrt(j2), (((float) j2) * 8000.0f) / i);
|
|
if (this.totalElapsedTimeMs >= 2000 || this.totalBytesTransferred >= 524288) {
|
|
this.bitrateEstimate = this.slidingPercentile.getPercentile(0.5f);
|
|
}
|
|
maybeNotifyBandwidthSample(i, this.sampleBytesTransferred, this.bitrateEstimate);
|
|
this.sampleStartTimeMs = elapsedRealtime;
|
|
this.sampleBytesTransferred = 0L;
|
|
}
|
|
this.streamCount--;
|
|
}
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
public synchronized void onNetworkTypeChanged(int i) {
|
|
int i2 = this.networkType;
|
|
if (i2 == 0 || this.resetOnNetworkTypeChange) {
|
|
if (this.networkTypeOverrideSet) {
|
|
i = this.networkTypeOverride;
|
|
}
|
|
if (i2 == i) {
|
|
return;
|
|
}
|
|
this.networkType = i;
|
|
if (i != 1 && i != 0 && i != 8) {
|
|
this.bitrateEstimate = getInitialBitrateEstimateForNetworkType(i);
|
|
long elapsedRealtime = this.clock.elapsedRealtime();
|
|
maybeNotifyBandwidthSample(this.streamCount > 0 ? (int) (elapsedRealtime - this.sampleStartTimeMs) : 0, this.sampleBytesTransferred, this.bitrateEstimate);
|
|
this.sampleStartTimeMs = elapsedRealtime;
|
|
this.sampleBytesTransferred = 0L;
|
|
this.totalBytesTransferred = 0L;
|
|
this.totalElapsedTimeMs = 0L;
|
|
this.slidingPercentile.reset();
|
|
}
|
|
}
|
|
}
|
|
|
|
private void maybeNotifyBandwidthSample(int i, long j, long j2) {
|
|
if (i == 0 && j == 0 && j2 == this.lastReportedBitrateEstimate) {
|
|
return;
|
|
}
|
|
this.lastReportedBitrateEstimate = j2;
|
|
this.eventDispatcher.bandwidthSample(i, j, j2);
|
|
}
|
|
|
|
private long getInitialBitrateEstimateForNetworkType(int i) {
|
|
Long l = this.initialBitrateEstimates.get(Integer.valueOf(i));
|
|
if (l == null) {
|
|
l = this.initialBitrateEstimates.get(0);
|
|
}
|
|
if (l == null) {
|
|
l = 1000000L;
|
|
}
|
|
return l.longValue();
|
|
}
|
|
|
|
private static boolean isTransferAtFullNetworkSpeed(DataSpec dataSpec, boolean z) {
|
|
return z && !dataSpec.isFlagSet(8);
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
public static int[] getInitialBitrateCountryGroupAssignment(String str) {
|
|
str.hashCode();
|
|
char c = 65535;
|
|
switch (str.hashCode()) {
|
|
case 2083:
|
|
if (str.equals("AD")) {
|
|
c = 0;
|
|
break;
|
|
}
|
|
break;
|
|
case 2084:
|
|
if (str.equals("AE")) {
|
|
c = 1;
|
|
break;
|
|
}
|
|
break;
|
|
case 2085:
|
|
if (str.equals("AF")) {
|
|
c = 2;
|
|
break;
|
|
}
|
|
break;
|
|
case 2086:
|
|
if (str.equals("AG")) {
|
|
c = 3;
|
|
break;
|
|
}
|
|
break;
|
|
case 2088:
|
|
if (str.equals("AI")) {
|
|
c = 4;
|
|
break;
|
|
}
|
|
break;
|
|
case 2091:
|
|
if (str.equals("AL")) {
|
|
c = 5;
|
|
break;
|
|
}
|
|
break;
|
|
case 2092:
|
|
if (str.equals("AM")) {
|
|
c = 6;
|
|
break;
|
|
}
|
|
break;
|
|
case 2094:
|
|
if (str.equals("AO")) {
|
|
c = 7;
|
|
break;
|
|
}
|
|
break;
|
|
case 2096:
|
|
if (str.equals("AQ")) {
|
|
c = '\b';
|
|
break;
|
|
}
|
|
break;
|
|
case 2098:
|
|
if (str.equals("AS")) {
|
|
c = '\t';
|
|
break;
|
|
}
|
|
break;
|
|
case 2099:
|
|
if (str.equals("AT")) {
|
|
c = '\n';
|
|
break;
|
|
}
|
|
break;
|
|
case 2100:
|
|
if (str.equals("AU")) {
|
|
c = 11;
|
|
break;
|
|
}
|
|
break;
|
|
case 2102:
|
|
if (str.equals("AW")) {
|
|
c = '\f';
|
|
break;
|
|
}
|
|
break;
|
|
case 2103:
|
|
if (str.equals("AX")) {
|
|
c = '\r';
|
|
break;
|
|
}
|
|
break;
|
|
case 2105:
|
|
if (str.equals("AZ")) {
|
|
c = 14;
|
|
break;
|
|
}
|
|
break;
|
|
case 2111:
|
|
if (str.equals("BA")) {
|
|
c = 15;
|
|
break;
|
|
}
|
|
break;
|
|
case 2112:
|
|
if (str.equals("BB")) {
|
|
c = 16;
|
|
break;
|
|
}
|
|
break;
|
|
case 2114:
|
|
if (str.equals("BD")) {
|
|
c = 17;
|
|
break;
|
|
}
|
|
break;
|
|
case 2115:
|
|
if (str.equals("BE")) {
|
|
c = 18;
|
|
break;
|
|
}
|
|
break;
|
|
case 2116:
|
|
if (str.equals("BF")) {
|
|
c = 19;
|
|
break;
|
|
}
|
|
break;
|
|
case 2117:
|
|
if (str.equals("BG")) {
|
|
c = 20;
|
|
break;
|
|
}
|
|
break;
|
|
case 2118:
|
|
if (str.equals("BH")) {
|
|
c = 21;
|
|
break;
|
|
}
|
|
break;
|
|
case 2119:
|
|
if (str.equals("BI")) {
|
|
c = 22;
|
|
break;
|
|
}
|
|
break;
|
|
case 2120:
|
|
if (str.equals("BJ")) {
|
|
c = 23;
|
|
break;
|
|
}
|
|
break;
|
|
case 2122:
|
|
if (str.equals("BL")) {
|
|
c = 24;
|
|
break;
|
|
}
|
|
break;
|
|
case 2123:
|
|
if (str.equals("BM")) {
|
|
c = 25;
|
|
break;
|
|
}
|
|
break;
|
|
case 2124:
|
|
if (str.equals("BN")) {
|
|
c = JSONLexer.EOI;
|
|
break;
|
|
}
|
|
break;
|
|
case 2125:
|
|
if (str.equals("BO")) {
|
|
c = 27;
|
|
break;
|
|
}
|
|
break;
|
|
case 2127:
|
|
if (str.equals("BQ")) {
|
|
c = 28;
|
|
break;
|
|
}
|
|
break;
|
|
case 2128:
|
|
if (str.equals("BR")) {
|
|
c = 29;
|
|
break;
|
|
}
|
|
break;
|
|
case 2129:
|
|
if (str.equals("BS")) {
|
|
c = 30;
|
|
break;
|
|
}
|
|
break;
|
|
case 2130:
|
|
if (str.equals("BT")) {
|
|
c = 31;
|
|
break;
|
|
}
|
|
break;
|
|
case 2133:
|
|
if (str.equals("BW")) {
|
|
c = ' ';
|
|
break;
|
|
}
|
|
break;
|
|
case 2135:
|
|
if (str.equals("BY")) {
|
|
c = '!';
|
|
break;
|
|
}
|
|
break;
|
|
case 2136:
|
|
if (str.equals("BZ")) {
|
|
c = Typography.quote;
|
|
break;
|
|
}
|
|
break;
|
|
case 2142:
|
|
if (str.equals("CA")) {
|
|
c = '#';
|
|
break;
|
|
}
|
|
break;
|
|
case 2145:
|
|
if (str.equals("CD")) {
|
|
c = Typography.dollar;
|
|
break;
|
|
}
|
|
break;
|
|
case 2147:
|
|
if (str.equals("CF")) {
|
|
c = '%';
|
|
break;
|
|
}
|
|
break;
|
|
case 2148:
|
|
if (str.equals("CG")) {
|
|
c = Typography.amp;
|
|
break;
|
|
}
|
|
break;
|
|
case 2149:
|
|
if (str.equals("CH")) {
|
|
c = '\'';
|
|
break;
|
|
}
|
|
break;
|
|
case 2150:
|
|
if (str.equals("CI")) {
|
|
c = '(';
|
|
break;
|
|
}
|
|
break;
|
|
case 2152:
|
|
if (str.equals("CK")) {
|
|
c = ')';
|
|
break;
|
|
}
|
|
break;
|
|
case 2153:
|
|
if (str.equals("CL")) {
|
|
c = '*';
|
|
break;
|
|
}
|
|
break;
|
|
case 2154:
|
|
if (str.equals("CM")) {
|
|
c = '+';
|
|
break;
|
|
}
|
|
break;
|
|
case 2155:
|
|
if (str.equals("CN")) {
|
|
c = ',';
|
|
break;
|
|
}
|
|
break;
|
|
case 2156:
|
|
if (str.equals("CO")) {
|
|
c = '-';
|
|
break;
|
|
}
|
|
break;
|
|
case 2159:
|
|
if (str.equals("CR")) {
|
|
c = '.';
|
|
break;
|
|
}
|
|
break;
|
|
case 2162:
|
|
if (str.equals("CU")) {
|
|
c = '/';
|
|
break;
|
|
}
|
|
break;
|
|
case 2163:
|
|
if (str.equals("CV")) {
|
|
c = '0';
|
|
break;
|
|
}
|
|
break;
|
|
case 2164:
|
|
if (str.equals("CW")) {
|
|
c = '1';
|
|
break;
|
|
}
|
|
break;
|
|
case 2165:
|
|
if (str.equals("CX")) {
|
|
c = '2';
|
|
break;
|
|
}
|
|
break;
|
|
case 2166:
|
|
if (str.equals("CY")) {
|
|
c = '3';
|
|
break;
|
|
}
|
|
break;
|
|
case 2167:
|
|
if (str.equals("CZ")) {
|
|
c = '4';
|
|
break;
|
|
}
|
|
break;
|
|
case 2177:
|
|
if (str.equals("DE")) {
|
|
c = '5';
|
|
break;
|
|
}
|
|
break;
|
|
case 2182:
|
|
if (str.equals("DJ")) {
|
|
c = '6';
|
|
break;
|
|
}
|
|
break;
|
|
case 2183:
|
|
if (str.equals("DK")) {
|
|
c = '7';
|
|
break;
|
|
}
|
|
break;
|
|
case 2185:
|
|
if (str.equals("DM")) {
|
|
c = '8';
|
|
break;
|
|
}
|
|
break;
|
|
case 2187:
|
|
if (str.equals("DO")) {
|
|
c = '9';
|
|
break;
|
|
}
|
|
break;
|
|
case 2198:
|
|
if (str.equals("DZ")) {
|
|
c = ':';
|
|
break;
|
|
}
|
|
break;
|
|
case 2206:
|
|
if (str.equals("EC")) {
|
|
c = ';';
|
|
break;
|
|
}
|
|
break;
|
|
case 2208:
|
|
if (str.equals("EE")) {
|
|
c = Typography.less;
|
|
break;
|
|
}
|
|
break;
|
|
case 2210:
|
|
if (str.equals("EG")) {
|
|
c = '=';
|
|
break;
|
|
}
|
|
break;
|
|
case 2221:
|
|
if (str.equals("ER")) {
|
|
c = Typography.greater;
|
|
break;
|
|
}
|
|
break;
|
|
case 2222:
|
|
if (str.equals("ES")) {
|
|
c = '?';
|
|
break;
|
|
}
|
|
break;
|
|
case 2223:
|
|
if (str.equals("ET")) {
|
|
c = '@';
|
|
break;
|
|
}
|
|
break;
|
|
case 2243:
|
|
if (str.equals("FI")) {
|
|
c = 'A';
|
|
break;
|
|
}
|
|
break;
|
|
case 2244:
|
|
if (str.equals("FJ")) {
|
|
c = 'B';
|
|
break;
|
|
}
|
|
break;
|
|
case 2247:
|
|
if (str.equals("FM")) {
|
|
c = 'C';
|
|
break;
|
|
}
|
|
break;
|
|
case 2249:
|
|
if (str.equals("FO")) {
|
|
c = 'D';
|
|
break;
|
|
}
|
|
break;
|
|
case 2252:
|
|
if (str.equals("FR")) {
|
|
c = 'E';
|
|
break;
|
|
}
|
|
break;
|
|
case 2266:
|
|
if (str.equals("GA")) {
|
|
c = 'F';
|
|
break;
|
|
}
|
|
break;
|
|
case 2267:
|
|
if (str.equals("GB")) {
|
|
c = 'G';
|
|
break;
|
|
}
|
|
break;
|
|
case 2269:
|
|
if (str.equals("GD")) {
|
|
c = 'H';
|
|
break;
|
|
}
|
|
break;
|
|
case 2270:
|
|
if (str.equals("GE")) {
|
|
c = 'I';
|
|
break;
|
|
}
|
|
break;
|
|
case 2271:
|
|
if (str.equals("GF")) {
|
|
c = 'J';
|
|
break;
|
|
}
|
|
break;
|
|
case 2272:
|
|
if (str.equals("GG")) {
|
|
c = 'K';
|
|
break;
|
|
}
|
|
break;
|
|
case 2273:
|
|
if (str.equals("GH")) {
|
|
c = 'L';
|
|
break;
|
|
}
|
|
break;
|
|
case 2274:
|
|
if (str.equals("GI")) {
|
|
c = 'M';
|
|
break;
|
|
}
|
|
break;
|
|
case 2277:
|
|
if (str.equals("GL")) {
|
|
c = 'N';
|
|
break;
|
|
}
|
|
break;
|
|
case 2278:
|
|
if (str.equals("GM")) {
|
|
c = 'O';
|
|
break;
|
|
}
|
|
break;
|
|
case 2279:
|
|
if (str.equals("GN")) {
|
|
c = 'P';
|
|
break;
|
|
}
|
|
break;
|
|
case 2281:
|
|
if (str.equals("GP")) {
|
|
c = 'Q';
|
|
break;
|
|
}
|
|
break;
|
|
case 2282:
|
|
if (str.equals("GQ")) {
|
|
c = 'R';
|
|
break;
|
|
}
|
|
break;
|
|
case 2283:
|
|
if (str.equals("GR")) {
|
|
c = 'S';
|
|
break;
|
|
}
|
|
break;
|
|
case 2285:
|
|
if (str.equals("GT")) {
|
|
c = 'T';
|
|
break;
|
|
}
|
|
break;
|
|
case 2286:
|
|
if (str.equals("GU")) {
|
|
c = 'U';
|
|
break;
|
|
}
|
|
break;
|
|
case 2288:
|
|
if (str.equals("GW")) {
|
|
c = 'V';
|
|
break;
|
|
}
|
|
break;
|
|
case 2290:
|
|
if (str.equals("GY")) {
|
|
c = 'W';
|
|
break;
|
|
}
|
|
break;
|
|
case 2307:
|
|
if (str.equals("HK")) {
|
|
c = 'X';
|
|
break;
|
|
}
|
|
break;
|
|
case 2310:
|
|
if (str.equals("HN")) {
|
|
c = 'Y';
|
|
break;
|
|
}
|
|
break;
|
|
case 2314:
|
|
if (str.equals("HR")) {
|
|
c = 'Z';
|
|
break;
|
|
}
|
|
break;
|
|
case 2316:
|
|
if (str.equals("HT")) {
|
|
c = '[';
|
|
break;
|
|
}
|
|
break;
|
|
case 2317:
|
|
if (str.equals("HU")) {
|
|
c = '\\';
|
|
break;
|
|
}
|
|
break;
|
|
case 2331:
|
|
if (str.equals("ID")) {
|
|
c = ']';
|
|
break;
|
|
}
|
|
break;
|
|
case 2332:
|
|
if (str.equals("IE")) {
|
|
c = '^';
|
|
break;
|
|
}
|
|
break;
|
|
case 2339:
|
|
if (str.equals("IL")) {
|
|
c = '_';
|
|
break;
|
|
}
|
|
break;
|
|
case 2340:
|
|
if (str.equals("IM")) {
|
|
c = '`';
|
|
break;
|
|
}
|
|
break;
|
|
case 2341:
|
|
if (str.equals("IN")) {
|
|
c = 'a';
|
|
break;
|
|
}
|
|
break;
|
|
case 2342:
|
|
if (str.equals("IO")) {
|
|
c = 'b';
|
|
break;
|
|
}
|
|
break;
|
|
case 2344:
|
|
if (str.equals("IQ")) {
|
|
c = 'c';
|
|
break;
|
|
}
|
|
break;
|
|
case 2345:
|
|
if (str.equals("IR")) {
|
|
c = 'd';
|
|
break;
|
|
}
|
|
break;
|
|
case 2346:
|
|
if (str.equals("IS")) {
|
|
c = 'e';
|
|
break;
|
|
}
|
|
break;
|
|
case 2347:
|
|
if (str.equals("IT")) {
|
|
c = 'f';
|
|
break;
|
|
}
|
|
break;
|
|
case 2363:
|
|
if (str.equals("JE")) {
|
|
c = 'g';
|
|
break;
|
|
}
|
|
break;
|
|
case 2371:
|
|
if (str.equals("JM")) {
|
|
c = 'h';
|
|
break;
|
|
}
|
|
break;
|
|
case 2373:
|
|
if (str.equals("JO")) {
|
|
c = 'i';
|
|
break;
|
|
}
|
|
break;
|
|
case 2374:
|
|
if (str.equals("JP")) {
|
|
c = 'j';
|
|
break;
|
|
}
|
|
break;
|
|
case 2394:
|
|
if (str.equals("KE")) {
|
|
c = 'k';
|
|
break;
|
|
}
|
|
break;
|
|
case 2396:
|
|
if (str.equals(ExpandedProductParsedResult.KILOGRAM)) {
|
|
c = 'l';
|
|
break;
|
|
}
|
|
break;
|
|
case 2397:
|
|
if (str.equals("KH")) {
|
|
c = 'm';
|
|
break;
|
|
}
|
|
break;
|
|
case 2398:
|
|
if (str.equals("KI")) {
|
|
c = 'n';
|
|
break;
|
|
}
|
|
break;
|
|
case 2402:
|
|
if (str.equals("KM")) {
|
|
c = 'o';
|
|
break;
|
|
}
|
|
break;
|
|
case 2403:
|
|
if (str.equals("KN")) {
|
|
c = 'p';
|
|
break;
|
|
}
|
|
break;
|
|
case 2407:
|
|
if (str.equals("KR")) {
|
|
c = 'q';
|
|
break;
|
|
}
|
|
break;
|
|
case 2412:
|
|
if (str.equals("KW")) {
|
|
c = 'r';
|
|
break;
|
|
}
|
|
break;
|
|
case 2414:
|
|
if (str.equals("KY")) {
|
|
c = 's';
|
|
break;
|
|
}
|
|
break;
|
|
case 2415:
|
|
if (str.equals("KZ")) {
|
|
c = 't';
|
|
break;
|
|
}
|
|
break;
|
|
case 2421:
|
|
if (str.equals("LA")) {
|
|
c = 'u';
|
|
break;
|
|
}
|
|
break;
|
|
case 2422:
|
|
if (str.equals(ExpandedProductParsedResult.POUND)) {
|
|
c = 'v';
|
|
break;
|
|
}
|
|
break;
|
|
case 2423:
|
|
if (str.equals("LC")) {
|
|
c = 'w';
|
|
break;
|
|
}
|
|
break;
|
|
case 2429:
|
|
if (str.equals("LI")) {
|
|
c = 'x';
|
|
break;
|
|
}
|
|
break;
|
|
case 2431:
|
|
if (str.equals("LK")) {
|
|
c = 'y';
|
|
break;
|
|
}
|
|
break;
|
|
case 2438:
|
|
if (str.equals("LR")) {
|
|
c = 'z';
|
|
break;
|
|
}
|
|
break;
|
|
case 2439:
|
|
if (str.equals("LS")) {
|
|
c = '{';
|
|
break;
|
|
}
|
|
break;
|
|
case 2440:
|
|
if (str.equals("LT")) {
|
|
c = '|';
|
|
break;
|
|
}
|
|
break;
|
|
case 2441:
|
|
if (str.equals("LU")) {
|
|
c = '}';
|
|
break;
|
|
}
|
|
break;
|
|
case 2442:
|
|
if (str.equals("LV")) {
|
|
c = '~';
|
|
break;
|
|
}
|
|
break;
|
|
case 2445:
|
|
if (str.equals("LY")) {
|
|
c = Ascii.MAX;
|
|
break;
|
|
}
|
|
break;
|
|
case 2452:
|
|
if (str.equals("MA")) {
|
|
c = 128;
|
|
break;
|
|
}
|
|
break;
|
|
case 2454:
|
|
if (str.equals("MC")) {
|
|
c = 129;
|
|
break;
|
|
}
|
|
break;
|
|
case 2455:
|
|
if (str.equals("MD")) {
|
|
c = 130;
|
|
break;
|
|
}
|
|
break;
|
|
case 2456:
|
|
if (str.equals("ME")) {
|
|
c = 131;
|
|
break;
|
|
}
|
|
break;
|
|
case 2457:
|
|
if (str.equals("MF")) {
|
|
c = 132;
|
|
break;
|
|
}
|
|
break;
|
|
case 2458:
|
|
if (str.equals("MG")) {
|
|
c = 133;
|
|
break;
|
|
}
|
|
break;
|
|
case 2459:
|
|
if (str.equals("MH")) {
|
|
c = 134;
|
|
break;
|
|
}
|
|
break;
|
|
case 2462:
|
|
if (str.equals("MK")) {
|
|
c = 135;
|
|
break;
|
|
}
|
|
break;
|
|
case 2463:
|
|
if (str.equals("ML")) {
|
|
c = 136;
|
|
break;
|
|
}
|
|
break;
|
|
case 2464:
|
|
if (str.equals("MM")) {
|
|
c = 137;
|
|
break;
|
|
}
|
|
break;
|
|
case 2465:
|
|
if (str.equals("MN")) {
|
|
c = 138;
|
|
break;
|
|
}
|
|
break;
|
|
case 2466:
|
|
if (str.equals("MO")) {
|
|
c = 139;
|
|
break;
|
|
}
|
|
break;
|
|
case 2467:
|
|
if (str.equals("MP")) {
|
|
c = 140;
|
|
break;
|
|
}
|
|
break;
|
|
case 2468:
|
|
if (str.equals("MQ")) {
|
|
c = 141;
|
|
break;
|
|
}
|
|
break;
|
|
case 2469:
|
|
if (str.equals("MR")) {
|
|
c = 142;
|
|
break;
|
|
}
|
|
break;
|
|
case 2470:
|
|
if (str.equals("MS")) {
|
|
c = 143;
|
|
break;
|
|
}
|
|
break;
|
|
case 2471:
|
|
if (str.equals("MT")) {
|
|
c = 144;
|
|
break;
|
|
}
|
|
break;
|
|
case 2472:
|
|
if (str.equals("MU")) {
|
|
c = 145;
|
|
break;
|
|
}
|
|
break;
|
|
case 2473:
|
|
if (str.equals("MV")) {
|
|
c = 146;
|
|
break;
|
|
}
|
|
break;
|
|
case 2474:
|
|
if (str.equals("MW")) {
|
|
c = 147;
|
|
break;
|
|
}
|
|
break;
|
|
case 2475:
|
|
if (str.equals("MX")) {
|
|
c = 148;
|
|
break;
|
|
}
|
|
break;
|
|
case 2476:
|
|
if (str.equals("MY")) {
|
|
c = 149;
|
|
break;
|
|
}
|
|
break;
|
|
case 2477:
|
|
if (str.equals("MZ")) {
|
|
c = 150;
|
|
break;
|
|
}
|
|
break;
|
|
case 2483:
|
|
if (str.equals("NA")) {
|
|
c = 151;
|
|
break;
|
|
}
|
|
break;
|
|
case 2485:
|
|
if (str.equals("NC")) {
|
|
c = 152;
|
|
break;
|
|
}
|
|
break;
|
|
case 2487:
|
|
if (str.equals("NE")) {
|
|
c = 153;
|
|
break;
|
|
}
|
|
break;
|
|
case 2489:
|
|
if (str.equals("NG")) {
|
|
c = 154;
|
|
break;
|
|
}
|
|
break;
|
|
case 2491:
|
|
if (str.equals("NI")) {
|
|
c = 155;
|
|
break;
|
|
}
|
|
break;
|
|
case 2494:
|
|
if (str.equals("NL")) {
|
|
c = 156;
|
|
break;
|
|
}
|
|
break;
|
|
case 2497:
|
|
if (str.equals("NO")) {
|
|
c = 157;
|
|
break;
|
|
}
|
|
break;
|
|
case 2498:
|
|
if (str.equals("NP")) {
|
|
c = 158;
|
|
break;
|
|
}
|
|
break;
|
|
case 2500:
|
|
if (str.equals("NR")) {
|
|
c = 159;
|
|
break;
|
|
}
|
|
break;
|
|
case 2503:
|
|
if (str.equals("NU")) {
|
|
c = Typography.nbsp;
|
|
break;
|
|
}
|
|
break;
|
|
case 2508:
|
|
if (str.equals("NZ")) {
|
|
c = 161;
|
|
break;
|
|
}
|
|
break;
|
|
case 2526:
|
|
if (str.equals("OM")) {
|
|
c = Typography.cent;
|
|
break;
|
|
}
|
|
break;
|
|
case 2545:
|
|
if (str.equals("PA")) {
|
|
c = Typography.pound;
|
|
break;
|
|
}
|
|
break;
|
|
case 2549:
|
|
if (str.equals("PE")) {
|
|
c = 164;
|
|
break;
|
|
}
|
|
break;
|
|
case 2550:
|
|
if (str.equals("PF")) {
|
|
c = 165;
|
|
break;
|
|
}
|
|
break;
|
|
case 2551:
|
|
if (str.equals("PG")) {
|
|
c = 166;
|
|
break;
|
|
}
|
|
break;
|
|
case 2552:
|
|
if (str.equals("PH")) {
|
|
c = Typography.section;
|
|
break;
|
|
}
|
|
break;
|
|
case 2555:
|
|
if (str.equals("PK")) {
|
|
c = 168;
|
|
break;
|
|
}
|
|
break;
|
|
case 2556:
|
|
if (str.equals("PL")) {
|
|
c = Typography.copyright;
|
|
break;
|
|
}
|
|
break;
|
|
case 2557:
|
|
if (str.equals("PM")) {
|
|
c = 170;
|
|
break;
|
|
}
|
|
break;
|
|
case 2562:
|
|
if (str.equals("PR")) {
|
|
c = 171;
|
|
break;
|
|
}
|
|
break;
|
|
case 2563:
|
|
if (str.equals("PS")) {
|
|
c = 172;
|
|
break;
|
|
}
|
|
break;
|
|
case 2564:
|
|
if (str.equals("PT")) {
|
|
c = 173;
|
|
break;
|
|
}
|
|
break;
|
|
case 2567:
|
|
if (str.equals("PW")) {
|
|
c = Typography.registered;
|
|
break;
|
|
}
|
|
break;
|
|
case 2569:
|
|
if (str.equals("PY")) {
|
|
c = 175;
|
|
break;
|
|
}
|
|
break;
|
|
case 2576:
|
|
if (str.equals("QA")) {
|
|
c = Typography.degree;
|
|
break;
|
|
}
|
|
break;
|
|
case 2611:
|
|
if (str.equals("RE")) {
|
|
c = Typography.plusMinus;
|
|
break;
|
|
}
|
|
break;
|
|
case 2621:
|
|
if (str.equals("RO")) {
|
|
c = 178;
|
|
break;
|
|
}
|
|
break;
|
|
case 2625:
|
|
if (str.equals("RS")) {
|
|
c = 179;
|
|
break;
|
|
}
|
|
break;
|
|
case 2627:
|
|
if (str.equals("RU")) {
|
|
c = 180;
|
|
break;
|
|
}
|
|
break;
|
|
case 2629:
|
|
if (str.equals("RW")) {
|
|
c = 181;
|
|
break;
|
|
}
|
|
break;
|
|
case 2638:
|
|
if (str.equals("SA")) {
|
|
c = Typography.paragraph;
|
|
break;
|
|
}
|
|
break;
|
|
case 2639:
|
|
if (str.equals("SB")) {
|
|
c = Typography.middleDot;
|
|
break;
|
|
}
|
|
break;
|
|
case 2640:
|
|
if (str.equals("SC")) {
|
|
c = 184;
|
|
break;
|
|
}
|
|
break;
|
|
case 2641:
|
|
if (str.equals("SD")) {
|
|
c = 185;
|
|
break;
|
|
}
|
|
break;
|
|
case 2642:
|
|
if (str.equals("SE")) {
|
|
c = 186;
|
|
break;
|
|
}
|
|
break;
|
|
case 2644:
|
|
if (str.equals("SG")) {
|
|
c = 187;
|
|
break;
|
|
}
|
|
break;
|
|
case 2645:
|
|
if (str.equals("SH")) {
|
|
c = 188;
|
|
break;
|
|
}
|
|
break;
|
|
case 2646:
|
|
if (str.equals("SI")) {
|
|
c = Typography.half;
|
|
break;
|
|
}
|
|
break;
|
|
case 2647:
|
|
if (str.equals("SJ")) {
|
|
c = 190;
|
|
break;
|
|
}
|
|
break;
|
|
case 2648:
|
|
if (str.equals("SK")) {
|
|
c = 191;
|
|
break;
|
|
}
|
|
break;
|
|
case 2649:
|
|
if (str.equals("SL")) {
|
|
c = 192;
|
|
break;
|
|
}
|
|
break;
|
|
case 2650:
|
|
if (str.equals("SM")) {
|
|
c = 193;
|
|
break;
|
|
}
|
|
break;
|
|
case 2651:
|
|
if (str.equals("SN")) {
|
|
c = 194;
|
|
break;
|
|
}
|
|
break;
|
|
case 2652:
|
|
if (str.equals("SO")) {
|
|
c = 195;
|
|
break;
|
|
}
|
|
break;
|
|
case 2655:
|
|
if (str.equals("SR")) {
|
|
c = 196;
|
|
break;
|
|
}
|
|
break;
|
|
case 2656:
|
|
if (str.equals("SS")) {
|
|
c = 197;
|
|
break;
|
|
}
|
|
break;
|
|
case 2657:
|
|
if (str.equals("ST")) {
|
|
c = 198;
|
|
break;
|
|
}
|
|
break;
|
|
case 2659:
|
|
if (str.equals("SV")) {
|
|
c = 199;
|
|
break;
|
|
}
|
|
break;
|
|
case 2661:
|
|
if (str.equals("SX")) {
|
|
c = 200;
|
|
break;
|
|
}
|
|
break;
|
|
case 2662:
|
|
if (str.equals("SY")) {
|
|
c = 201;
|
|
break;
|
|
}
|
|
break;
|
|
case 2663:
|
|
if (str.equals("SZ")) {
|
|
c = 202;
|
|
break;
|
|
}
|
|
break;
|
|
case 2671:
|
|
if (str.equals("TC")) {
|
|
c = 203;
|
|
break;
|
|
}
|
|
break;
|
|
case 2672:
|
|
if (str.equals("TD")) {
|
|
c = 204;
|
|
break;
|
|
}
|
|
break;
|
|
case 2675:
|
|
if (str.equals("TG")) {
|
|
c = 205;
|
|
break;
|
|
}
|
|
break;
|
|
case 2676:
|
|
if (str.equals("TH")) {
|
|
c = 206;
|
|
break;
|
|
}
|
|
break;
|
|
case 2678:
|
|
if (str.equals("TJ")) {
|
|
c = 207;
|
|
break;
|
|
}
|
|
break;
|
|
case 2679:
|
|
if (str.equals("TK")) {
|
|
c = 208;
|
|
break;
|
|
}
|
|
break;
|
|
case 2680:
|
|
if (str.equals("TL")) {
|
|
c = 209;
|
|
break;
|
|
}
|
|
break;
|
|
case 2681:
|
|
if (str.equals("TM")) {
|
|
c = 210;
|
|
break;
|
|
}
|
|
break;
|
|
case 2682:
|
|
if (str.equals("TN")) {
|
|
c = 211;
|
|
break;
|
|
}
|
|
break;
|
|
case 2683:
|
|
if (str.equals("TO")) {
|
|
c = 212;
|
|
break;
|
|
}
|
|
break;
|
|
case 2686:
|
|
if (str.equals("TR")) {
|
|
c = 213;
|
|
break;
|
|
}
|
|
break;
|
|
case 2688:
|
|
if (str.equals("TT")) {
|
|
c = 214;
|
|
break;
|
|
}
|
|
break;
|
|
case 2690:
|
|
if (str.equals("TV")) {
|
|
c = Typography.times;
|
|
break;
|
|
}
|
|
break;
|
|
case 2691:
|
|
if (str.equals("TW")) {
|
|
c = 216;
|
|
break;
|
|
}
|
|
break;
|
|
case 2694:
|
|
if (str.equals("TZ")) {
|
|
c = 217;
|
|
break;
|
|
}
|
|
break;
|
|
case 2700:
|
|
if (str.equals("UA")) {
|
|
c = 218;
|
|
break;
|
|
}
|
|
break;
|
|
case 2706:
|
|
if (str.equals("UG")) {
|
|
c = 219;
|
|
break;
|
|
}
|
|
break;
|
|
case 2718:
|
|
if (str.equals("US")) {
|
|
c = 220;
|
|
break;
|
|
}
|
|
break;
|
|
case 2724:
|
|
if (str.equals("UY")) {
|
|
c = 221;
|
|
break;
|
|
}
|
|
break;
|
|
case 2725:
|
|
if (str.equals("UZ")) {
|
|
c = 222;
|
|
break;
|
|
}
|
|
break;
|
|
case 2731:
|
|
if (str.equals("VA")) {
|
|
c = 223;
|
|
break;
|
|
}
|
|
break;
|
|
case 2733:
|
|
if (str.equals("VC")) {
|
|
c = 224;
|
|
break;
|
|
}
|
|
break;
|
|
case 2735:
|
|
if (str.equals("VE")) {
|
|
c = 225;
|
|
break;
|
|
}
|
|
break;
|
|
case 2737:
|
|
if (str.equals("VG")) {
|
|
c = 226;
|
|
break;
|
|
}
|
|
break;
|
|
case 2739:
|
|
if (str.equals("VI")) {
|
|
c = 227;
|
|
break;
|
|
}
|
|
break;
|
|
case 2744:
|
|
if (str.equals("VN")) {
|
|
c = 228;
|
|
break;
|
|
}
|
|
break;
|
|
case 2751:
|
|
if (str.equals("VU")) {
|
|
c = 229;
|
|
break;
|
|
}
|
|
break;
|
|
case 2767:
|
|
if (str.equals("WF")) {
|
|
c = 230;
|
|
break;
|
|
}
|
|
break;
|
|
case 2780:
|
|
if (str.equals("WS")) {
|
|
c = 231;
|
|
break;
|
|
}
|
|
break;
|
|
case 2803:
|
|
if (str.equals("XK")) {
|
|
c = 232;
|
|
break;
|
|
}
|
|
break;
|
|
case 2828:
|
|
if (str.equals("YE")) {
|
|
c = 233;
|
|
break;
|
|
}
|
|
break;
|
|
case 2843:
|
|
if (str.equals("YT")) {
|
|
c = 234;
|
|
break;
|
|
}
|
|
break;
|
|
case 2855:
|
|
if (str.equals("ZA")) {
|
|
c = 235;
|
|
break;
|
|
}
|
|
break;
|
|
case 2867:
|
|
if (str.equals("ZM")) {
|
|
c = 236;
|
|
break;
|
|
}
|
|
break;
|
|
case 2877:
|
|
if (str.equals("ZW")) {
|
|
c = 237;
|
|
break;
|
|
}
|
|
break;
|
|
}
|
|
switch (c) {
|
|
case 0:
|
|
case ConstraintLayout.LayoutParams.Table.LAYOUT_EDITOR_ABSOLUTEX /* 49 */:
|
|
return new int[]{2, 2, 0, 0, 2, 2};
|
|
case 1:
|
|
return new int[]{1, 4, 3, 4, 4, 2};
|
|
case 2:
|
|
case 166:
|
|
return new int[]{4, 3, 3, 3, 2, 2};
|
|
case 3:
|
|
return new int[]{2, 4, 3, 4, 2, 2};
|
|
case 4:
|
|
case 16:
|
|
case 25:
|
|
case 28:
|
|
case '8':
|
|
case 'D':
|
|
return new int[]{0, 2, 0, 0, 2, 2};
|
|
case 5:
|
|
return new int[]{1, 1, 1, 3, 2, 2};
|
|
case 6:
|
|
return new int[]{2, 3, 2, 3, 2, 2};
|
|
case 7:
|
|
return new int[]{4, 4, 4, 3, 2, 2};
|
|
case '\b':
|
|
case '>':
|
|
case 188:
|
|
return new int[]{4, 2, 2, 2, 2, 2};
|
|
case '\t':
|
|
return new int[]{2, 2, 3, 3, 2, 2};
|
|
case '\n':
|
|
return new int[]{1, 2, 1, 4, 1, 4};
|
|
case 11:
|
|
return new int[]{0, 2, 1, 1, 3, 0};
|
|
case '\f':
|
|
case 'U':
|
|
return new int[]{1, 2, 4, 4, 2, 2};
|
|
case '\r':
|
|
case '2':
|
|
case MenuKt.InTransitionDuration /* 120 */:
|
|
case 140:
|
|
case 143:
|
|
case 170:
|
|
case 193:
|
|
case 223:
|
|
return new int[]{0, 2, 2, 2, 2, 2};
|
|
case 14:
|
|
case 19:
|
|
case ':':
|
|
return new int[]{3, 3, 4, 4, 2, 2};
|
|
case 15:
|
|
case '^':
|
|
return new int[]{1, 1, 1, 1, 2, 2};
|
|
case 17:
|
|
case 't':
|
|
return new int[]{2, 1, 2, 2, 2, 2};
|
|
case 18:
|
|
return new int[]{0, 1, 4, 4, 3, 2};
|
|
case 20:
|
|
case '?':
|
|
case 'S':
|
|
case 189:
|
|
return new int[]{0, 0, 0, 0, 1, 2};
|
|
case 21:
|
|
return new int[]{1, 3, 1, 4, 4, 2};
|
|
case 22:
|
|
case '[':
|
|
case 133:
|
|
case 153:
|
|
case ComposerKt.providerMapsKey /* 204 */:
|
|
case 225:
|
|
case 233:
|
|
return new int[]{4, 4, 4, 4, 2, 2};
|
|
case 23:
|
|
return new int[]{4, 4, 2, 3, 2, 2};
|
|
case 24:
|
|
case 132:
|
|
case 175:
|
|
return new int[]{1, 2, 2, 2, 2, 2};
|
|
case 26:
|
|
return new int[]{3, 2, 0, 1, 2, 2};
|
|
case 27:
|
|
return new int[]{1, 2, 3, 2, 2, 2};
|
|
case 29:
|
|
return new int[]{1, 1, 2, 1, 1, 0};
|
|
case 30:
|
|
case 'v':
|
|
return new int[]{3, 2, 1, 2, 2, 2};
|
|
case 31:
|
|
case 150:
|
|
case 231:
|
|
return new int[]{3, 1, 2, 1, 2, 2};
|
|
case ' ':
|
|
return new int[]{3, 2, 1, 0, 2, 2};
|
|
case '!':
|
|
return new int[]{1, 1, 2, 3, 2, 2};
|
|
case '\"':
|
|
case ')':
|
|
return new int[]{2, 2, 2, 1, 2, 2};
|
|
case '#':
|
|
return new int[]{0, 2, 3, 3, 3, 3};
|
|
case '$':
|
|
case 'o':
|
|
return new int[]{4, 3, 3, 2, 2, 2};
|
|
case '%':
|
|
case 183:
|
|
return new int[]{4, 2, 4, 2, 2, 2};
|
|
case '&':
|
|
case Base64.mimeLineLength /* 76 */:
|
|
return new int[]{3, 3, 3, 3, 2, 2};
|
|
case '\'':
|
|
return new int[]{0, 0, 0, 0, 0, 3};
|
|
case '(':
|
|
case LockFreeTaskQueueCore.CLOSED_SHIFT /* 61 */:
|
|
return new int[]{3, 4, 3, 3, 2, 2};
|
|
case '*':
|
|
return new int[]{1, 1, 2, 1, 3, 2};
|
|
case '+':
|
|
return new int[]{4, 3, 3, 4, 2, 2};
|
|
case ',':
|
|
return new int[]{2, 0, 4, 3, 3, 1};
|
|
case '-':
|
|
return new int[]{2, 3, 4, 2, 2, 2};
|
|
case '.':
|
|
return new int[]{2, 4, 4, 4, 2, 2};
|
|
case '/':
|
|
case 'n':
|
|
return new int[]{4, 2, 4, 3, 2, 2};
|
|
case '0':
|
|
return new int[]{2, 3, 0, 1, 2, 2};
|
|
case ConstraintLayout.LayoutParams.Table.LAYOUT_CONSTRAINT_TAG /* 51 */:
|
|
case 'Z':
|
|
case WebSocketProtocol.PAYLOAD_SHORT /* 126 */:
|
|
return new int[]{1, 0, 0, 0, 0, 2};
|
|
case UpdateEngineErrorCodes.UPDATED_BUT_NOT_ACTIVE /* 52 */:
|
|
return new int[]{0, 0, 2, 0, 1, 2};
|
|
case '5':
|
|
return new int[]{0, 1, 3, 2, 2, 2};
|
|
case '6':
|
|
case ComposerKt.providerKey /* 201 */:
|
|
case ComposerKt.reuseKey /* 207 */:
|
|
return new int[]{4, 3, 4, 4, 2, 2};
|
|
case '7':
|
|
case LockFreeTaskQueueCore.FROZEN_SHIFT /* 60 */:
|
|
case '\\':
|
|
case '|':
|
|
case 144:
|
|
return new int[]{0, 0, 0, 0, 0, 2};
|
|
case '9':
|
|
return new int[]{3, 4, 4, 4, 4, 2};
|
|
case ';':
|
|
return new int[]{1, 3, 2, 1, 2, 2};
|
|
case '@':
|
|
case 194:
|
|
return new int[]{4, 4, 3, 2, 2, 2};
|
|
case 'A':
|
|
return new int[]{0, 0, 0, 2, 0, 2};
|
|
case 'B':
|
|
return new int[]{3, 1, 2, 3, 2, 2};
|
|
case MdtaMetadataEntry.TYPE_INDICATOR_INT32 /* 67 */:
|
|
return new int[]{4, 2, 3, 0, 2, 2};
|
|
case 'E':
|
|
return new int[]{1, 1, 2, 1, 1, 2};
|
|
case 'F':
|
|
case 205:
|
|
return new int[]{3, 4, 1, 0, 2, 2};
|
|
case 'G':
|
|
return new int[]{0, 1, 1, 2, 1, 2};
|
|
case 'H':
|
|
case 'p':
|
|
case 's':
|
|
case 'w':
|
|
case 200:
|
|
case 224:
|
|
return new int[]{1, 2, 0, 0, 2, 2};
|
|
case 'I':
|
|
return new int[]{1, 0, 0, 2, 2, 2};
|
|
case 'J':
|
|
case 168:
|
|
case 192:
|
|
return new int[]{3, 2, 3, 3, 2, 2};
|
|
case MenuKt.OutTransitionDuration /* 75 */:
|
|
return new int[]{0, 2, 1, 0, 2, 2};
|
|
case 'M':
|
|
case 'g':
|
|
return new int[]{1, 2, 0, 1, 2, 2};
|
|
case 'N':
|
|
case 208:
|
|
return new int[]{2, 2, 2, 4, 2, 2};
|
|
case 'O':
|
|
return new int[]{4, 3, 2, 4, 2, 2};
|
|
case 'P':
|
|
return new int[]{4, 4, 4, 2, 2, 2};
|
|
case 'Q':
|
|
return new int[]{3, 1, 1, 3, 2, 2};
|
|
case 'R':
|
|
return new int[]{4, 4, 3, 3, 2, 2};
|
|
case 'T':
|
|
return new int[]{2, 2, 2, 1, 1, 2};
|
|
case 'V':
|
|
return new int[]{4, 4, 2, 2, 2, 2};
|
|
case 'W':
|
|
return new int[]{3, 0, 1, 1, 2, 2};
|
|
case 'X':
|
|
return new int[]{0, 1, 1, 3, 2, 0};
|
|
case 'Y':
|
|
return new int[]{3, 3, 2, 2, 2, 2};
|
|
case ']':
|
|
return new int[]{3, 1, 1, 2, 3, 2};
|
|
case '_':
|
|
return new int[]{1, 2, 2, 3, 4, 2};
|
|
case '`':
|
|
return new int[]{0, 2, 0, 1, 2, 2};
|
|
case 'a':
|
|
return new int[]{1, 1, 2, 1, 2, 1};
|
|
case 'b':
|
|
case 215:
|
|
case 230:
|
|
return new int[]{4, 2, 2, 4, 2, 2};
|
|
case 'c':
|
|
case 190:
|
|
return new int[]{3, 2, 2, 2, 2, 2};
|
|
case 'd':
|
|
return new int[]{4, 2, 3, 3, 4, 2};
|
|
case 'e':
|
|
return new int[]{0, 0, 1, 0, 0, 2};
|
|
case LocationRequestCompat.QUALITY_BALANCED_POWER_ACCURACY /* 102 */:
|
|
return new int[]{0, 0, 1, 1, 1, 2};
|
|
case LocationRequestCompat.QUALITY_LOW_POWER /* 104 */:
|
|
return new int[]{2, 4, 2, 1, 2, 2};
|
|
case 'i':
|
|
return new int[]{2, 0, 1, 1, 2, 2};
|
|
case 'j':
|
|
return new int[]{0, 3, 3, 3, 4, 4};
|
|
case 'k':
|
|
return new int[]{3, 2, 2, 1, 2, 2};
|
|
case AppCompatDelegate.FEATURE_SUPPORT_ACTION_BAR /* 108 */:
|
|
case 141:
|
|
return new int[]{2, 1, 1, 2, 2, 2};
|
|
case AppCompatDelegate.FEATURE_SUPPORT_ACTION_BAR_OVERLAY /* 109 */:
|
|
return new int[]{1, 0, 4, 2, 2, 2};
|
|
case 'q':
|
|
return new int[]{0, 2, 2, 4, 4, 4};
|
|
case 'r':
|
|
return new int[]{1, 0, 1, 0, 0, 2};
|
|
case 'u':
|
|
return new int[]{1, 2, 1, 3, 2, 2};
|
|
case 'y':
|
|
return new int[]{3, 2, 3, 4, 4, 2};
|
|
case 'z':
|
|
return new int[]{3, 4, 3, 4, 2, 2};
|
|
case '{':
|
|
case 219:
|
|
return new int[]{3, 3, 3, 2, 2, 2};
|
|
case '}':
|
|
return new int[]{1, 1, 4, 2, 0, 2};
|
|
case 127:
|
|
case 212:
|
|
case 237:
|
|
return new int[]{3, 2, 4, 3, 2, 2};
|
|
case 128:
|
|
return new int[]{3, 3, 2, 1, 2, 2};
|
|
case 129:
|
|
return new int[]{0, 2, 2, 0, 2, 2};
|
|
case 130:
|
|
return new int[]{1, 0, 0, 0, 2, 2};
|
|
case 131:
|
|
return new int[]{2, 0, 0, 1, 1, 2};
|
|
case 134:
|
|
return new int[]{4, 2, 1, 3, 2, 2};
|
|
case 135:
|
|
return new int[]{2, 0, 0, 1, 3, 2};
|
|
case 136:
|
|
case 217:
|
|
return new int[]{3, 4, 2, 2, 2, 2};
|
|
case 137:
|
|
return new int[]{2, 2, 2, 3, 4, 2};
|
|
case 138:
|
|
return new int[]{2, 0, 1, 2, 2, 2};
|
|
case 139:
|
|
return new int[]{0, 2, 4, 4, 4, 2};
|
|
case 142:
|
|
return new int[]{4, 2, 3, 4, 2, 2};
|
|
case 145:
|
|
case 182:
|
|
return new int[]{3, 1, 1, 2, 2, 2};
|
|
case 146:
|
|
return new int[]{3, 4, 1, 3, 3, 2};
|
|
case 147:
|
|
return new int[]{4, 2, 3, 3, 2, 2};
|
|
case 148:
|
|
return new int[]{3, 4, 4, 4, 2, 2};
|
|
case 149:
|
|
return new int[]{1, 0, 4, 1, 2, 2};
|
|
case 151:
|
|
return new int[]{3, 4, 3, 2, 2, 2};
|
|
case 152:
|
|
return new int[]{3, 2, 3, 4, 2, 2};
|
|
case 154:
|
|
return new int[]{3, 4, 2, 1, 2, 2};
|
|
case 155:
|
|
return new int[]{2, 3, 4, 3, 2, 2};
|
|
case 156:
|
|
return new int[]{0, 2, 3, 3, 0, 4};
|
|
case 157:
|
|
return new int[]{0, 1, 2, 1, 1, 2};
|
|
case 158:
|
|
return new int[]{2, 1, 4, 3, 2, 2};
|
|
case 159:
|
|
return new int[]{4, 0, 3, 2, 2, 2};
|
|
case 160:
|
|
return new int[]{4, 2, 2, 1, 2, 2};
|
|
case 161:
|
|
return new int[]{1, 0, 2, 2, 4, 2};
|
|
case 162:
|
|
return new int[]{2, 3, 1, 3, 4, 2};
|
|
case 163:
|
|
return new int[]{2, 3, 3, 3, 2, 2};
|
|
case 164:
|
|
return new int[]{1, 2, 4, 4, 3, 2};
|
|
case 165:
|
|
case 199:
|
|
return new int[]{2, 3, 3, 1, 2, 2};
|
|
case 167:
|
|
return new int[]{2, 1, 3, 2, 2, 0};
|
|
case 169:
|
|
return new int[]{2, 1, 2, 2, 4, 2};
|
|
case 171:
|
|
return new int[]{2, 0, 2, 0, 2, 1};
|
|
case 172:
|
|
return new int[]{3, 4, 1, 4, 2, 2};
|
|
case 173:
|
|
return new int[]{1, 0, 0, 0, 1, 2};
|
|
case 174:
|
|
return new int[]{2, 2, 4, 2, 2, 2};
|
|
case 176:
|
|
return new int[]{1, 4, 4, 4, 4, 2};
|
|
case 177:
|
|
return new int[]{1, 2, 2, 3, 1, 2};
|
|
case 178:
|
|
return new int[]{0, 0, 1, 2, 1, 2};
|
|
case 179:
|
|
return new int[]{2, 0, 0, 0, 2, 2};
|
|
case SubsamplingScaleImageView.ORIENTATION_180 /* 180 */:
|
|
return new int[]{1, 0, 0, 0, 3, 3};
|
|
case 181:
|
|
return new int[]{3, 3, 1, 0, 2, 2};
|
|
case 184:
|
|
return new int[]{4, 3, 1, 1, 2, 2};
|
|
case 185:
|
|
return new int[]{4, 3, 4, 2, 2, 2};
|
|
case 186:
|
|
return new int[]{0, 1, 1, 1, 0, 2};
|
|
case 187:
|
|
return new int[]{2, 3, 3, 3, 3, 3};
|
|
case 191:
|
|
return new int[]{1, 1, 1, 1, 3, 2};
|
|
case 195:
|
|
return new int[]{3, 2, 2, 4, 4, 2};
|
|
case 196:
|
|
return new int[]{2, 4, 3, 0, 2, 2};
|
|
case 197:
|
|
case 210:
|
|
return new int[]{4, 2, 2, 3, 2, 2};
|
|
case 198:
|
|
return new int[]{2, 2, 1, 2, 2, 2};
|
|
case ComposerKt.compositionLocalMapKey /* 202 */:
|
|
return new int[]{4, 4, 3, 4, 2, 2};
|
|
case ComposerKt.providerValuesKey /* 203 */:
|
|
return new int[]{2, 2, 1, 3, 2, 2};
|
|
case ComposerKt.referenceKey /* 206 */:
|
|
return new int[]{0, 1, 2, 1, 2, 2};
|
|
case 209:
|
|
return new int[]{4, 2, 4, 4, 2, 2};
|
|
case 211:
|
|
case 221:
|
|
return new int[]{2, 1, 1, 1, 2, 2};
|
|
case 213:
|
|
return new int[]{1, 0, 0, 1, 3, 2};
|
|
case 214:
|
|
return new int[]{1, 4, 0, 0, 2, 2};
|
|
case 216:
|
|
return new int[]{0, 2, 0, 0, 0, 0};
|
|
case 218:
|
|
return new int[]{0, 1, 1, 2, 4, 2};
|
|
case 220:
|
|
return new int[]{1, 1, 4, 1, 3, 1};
|
|
case 222:
|
|
return new int[]{2, 2, 3, 4, 3, 2};
|
|
case 226:
|
|
return new int[]{2, 2, 0, 1, 2, 2};
|
|
case 227:
|
|
return new int[]{0, 2, 1, 2, 2, 2};
|
|
case 228:
|
|
return new int[]{0, 0, 1, 2, 2, 1};
|
|
case 229:
|
|
return new int[]{4, 3, 3, 1, 2, 2};
|
|
case 232:
|
|
return new int[]{1, 2, 1, 1, 2, 2};
|
|
case 234:
|
|
return new int[]{2, 3, 3, 4, 2, 2};
|
|
case 235:
|
|
return new int[]{2, 3, 2, 1, 2, 2};
|
|
case 236:
|
|
return new int[]{4, 4, 4, 3, 3, 2};
|
|
default:
|
|
return new int[]{2, 2, 2, 2, 2, 2};
|
|
}
|
|
}
|
|
}
|