public class org.apache.http.client.utils.Rfc3492Idn extends java.lang.Object implements org.apache.http.client.utils.Idn
{
private static final int base;
private static final int tmin;
private static final int tmax;
private static final int skew;
private static final int damp;
private static final int initial_bias;
private static final int initial_n;
private static final char delimiter;
private static final java.lang.String ACE_PREFIX;
public void <init>()
{
org.apache.http.client.utils.Rfc3492Idn v;
v := @this: org.apache.http.client.utils.Rfc3492Idn;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
private int adapt(int, int, boolean)
{
org.apache.http.client.utils.Rfc3492Idn v;
int v, v, v, v, v, v, v, v, v, v;
boolean v;
v := @this: org.apache.http.client.utils.Rfc3492Idn;
v := @parameter: int;
v := @parameter: int;
v := @parameter: boolean;
if v == 0 goto label;
v = v / 700;
goto label;
label:
v = v / 2;
label:
v = v / v;
v = v + v;
v = 0;
label:
if v <= 455 goto label;
v = v / 35;
v = v + 36;
goto label;
label:
v = 36 * v;
v = v + 38;
v = v / v;
v = v + v;
return v;
}
private int digit(char)
{
char v;
java.lang.IllegalArgumentException v;
org.apache.http.client.utils.Rfc3492Idn v;
int v, v, v, v;
java.lang.String v;
v := @this: org.apache.http.client.utils.Rfc3492Idn;
v := @parameter: char;
if v < 65 goto label;
if v > 90 goto label;
v = v - 65;
return v;
label:
if v < 97 goto label;
if v > 122 goto label;
v = v - 97;
return v;
label:
if v < 48 goto label;
if v > 57 goto label;
v = v - 48;
v = v + 26;
return v;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (char)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("illegal digit: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
}
public java.lang.String toUnicode(java.lang.String)
{
org.apache.http.client.utils.Rfc3492Idn v;
java.util.StringTokenizer v;
int v, v;
java.lang.StringBuilder v;
java.lang.String v, v, v, v;
boolean v, v;
v := @this: org.apache.http.client.utils.Rfc3492Idn;
v := @parameter: java.lang.String;
v = new java.lang.StringBuilder;
v = virtualinvoke v.<java.lang.String: int length()>();
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(v);
v = new java.util.StringTokenizer;
specialinvoke v.<java.util.StringTokenizer: void <init>(java.lang.String,java.lang.String)>(v, ".");
label:
v = virtualinvoke v.<java.util.StringTokenizer: boolean hasMoreTokens()>();
if v == 0 goto label;
v = virtualinvoke v.<java.util.StringTokenizer: java.lang.String nextToken()>();
v = virtualinvoke v.<java.lang.StringBuilder: int length()>();
if v <= 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(46);
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("xn--");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(4);
v = virtualinvoke v.<org.apache.http.client.utils.Rfc3492Idn: java.lang.String decode(java.lang.String)>(v);
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
protected java.lang.String decode(java.lang.String)
{
boolean v, v, v;
java.lang.CharSequence v;
java.lang.StringBuilder v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v;
char v;
org.apache.http.client.utils.Rfc3492Idn v;
v := @this: org.apache.http.client.utils.Rfc3492Idn;
v := @parameter: java.lang.String;
v = v;
v = 128;
v = 0;
v = 72;
v = new java.lang.StringBuilder;
v = virtualinvoke v.<java.lang.String: int length()>();
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(v);
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(45);
v = (int) -1;
if v == v goto label;
v = virtualinvoke v.<java.lang.String: java.lang.CharSequence subSequence(int,int)>(0, v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.CharSequence)>(v);
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
label:
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = v;
v = 1;
v = 36;
label:
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: char charAt(int)>(0);
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(1);
v = specialinvoke v.<org.apache.http.client.utils.Rfc3492Idn: int digit(char)>(v);
v = v * v;
v = v + v;
v = v + 1;
if v > v goto label;
v = 1;
goto label;
label:
v = v + 26;
if v < v goto label;
v = 26;
goto label;
label:
v = v - v;
label:
if v < v goto label;
v = 36 - v;
v = v * v;
v = v + 36;
goto label;
label:
v = v - v;
v = virtualinvoke v.<java.lang.StringBuilder: int length()>();
v = v + 1;
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = specialinvoke v.<org.apache.http.client.utils.Rfc3492Idn: int adapt(int,int,boolean)>(v, v, v);
v = virtualinvoke v.<java.lang.StringBuilder: int length()>();
v = v + 1;
v = v / v;
v = v + v;
v = virtualinvoke v.<java.lang.StringBuilder: int length()>();
v = v + 1;
v = v % v;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder insert(int,char)>(v, v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
}