/*
 * Decompiled with CFR 0.152.
 */
import java.util.Hashtable;
import java.util.Vector;

public final class pv {
    private static Hashtable e = new Hashtable();
    private Hashtable f;
    private Vector g;
    public no a;
    public pv b;
    public String c;
    public on d;

    public final int a(String string, int n) {
        if ((string = this.d(string)) != null) {
            try {
                return Integer.parseInt(string);
            }
            catch (NumberFormatException numberFormatException) {}
        }
        return n;
    }

    private static void b(String string, int n) {
        e.put(string, new Integer(n));
    }

    static {
        pv.b("area", 2);
        pv.b("base", 393218);
        pv.b("basefont", 2);
        pv.b("br", 2);
        pv.b("body", 1);
        pv.b("center", 33);
        pv.b("col", 2);
        pv.b("dd", 5);
        pv.b("dir", 1);
        pv.b("div", 1);
        pv.b("dl", 1);
        pv.b("dt", 5);
        pv.b("frame", 2);
        pv.b("h1", 33);
        pv.b("h2", 33);
        pv.b("h3", 33);
        pv.b("h4", 33);
        pv.b("h5", 33);
        pv.b("h6", 33);
        pv.b("hr", 3);
        pv.b("img", 2);
        pv.b("input", 2);
        pv.b("isindex", 2);
        pv.b("li", 5);
        pv.b("link", 262146);
        pv.b("marquee", 1);
        pv.b("menu", 1);
        pv.b("meta", 196610);
        pv.b("ol", 1);
        pv.b("option", 1);
        pv.b("p", 33);
        pv.b("param", 2);
        pv.b("pre", 1);
        pv.b("script", 65600);
        pv.b("style", 131200);
        pv.b("table", 1);
        pv.b("title", 327680);
        pv.b("td", 9);
        pv.b("th", 9);
        pv.b("tr", 17);
        pv.b("ul", 1);
        pv.b("xmp", 1);
    }

    public pv(no no2, String string) {
        this.a = no2;
        this.c = string;
    }

    public final void b() {
        this.a.C = this;
    }

    public final void d(int n) {
        this.g.removeElementAt(n);
    }

    public final pv b(int n) {
        return (pv)this.g.elementAt(n);
    }

    public final String c(int n) {
        return (String)this.g.elementAt(n);
    }

    public final String d(String string) {
        if (this.f != null) {
            return (String)this.f.get(string);
        }
        return null;
    }

    public final int a(int n) {
        if (!(this.g.elementAt(n) instanceof pv)) {
            return 2;
        }
        return 1;
    }

    public final int a() {
        if (this.g != null) {
            return this.g.size();
        }
        return 0;
    }

    public final boolean d() {
        return this.a(false) != null;
    }

    public final boolean c() {
        return this.a.C == this;
    }

    public final boolean c(String string) {
        return (string = this.d(string)) != null && !"false".equals(string = string.trim().toLowerCase()) && !"0".equals(string);
    }

    public final String e() {
        StringBuffer stringBuffer = new StringBuffer();
        for (int i = 0; i < this.a(); ++i) {
            if (this.a(i) != 2) {
                if (this.a(i) != 1) continue;
                stringBuffer.append(this.b(i).e());
                continue;
            }
            stringBuffer.append(this.c(i));
        }
        return stringBuffer.toString();
    }

    public final pv b(String string) {
        if (this.g != null) {
            for (int i = 0; i < this.a(); ++i) {
                if (this.a(i) != 1 || !this.b((int)i).c.equals(string)) {
                    continue;
                }
                return this.b(i);
            }
        }
        return null;
    }

    private String a(boolean bl2) {
        String string = this.d("href");
        if (string == null) {
            if (bl2 && this.b != null) {
                return this.b.a(true);
            }
            return null;
        }
        return string;
    }

    private String f(String string) {
        String string2 = this.d(string);
        if (string2 != null || this.b == null || !"table".equals(this.b.c) && !"tr".equals(this.b.c)) {
            return string2;
        }
        return this.b.f(string);
    }

    public final void a(pv pv2) {
        if (this.g == null) {
            this.g = new Vector();
        }
        this.g.addElement(pv2);
        pv2.b = this;
    }

    public final void a(String string) {
        if (this.g == null) {
            this.g = new Vector();
        }
        this.g.addElement(string);
    }

    public final void a(String string, String string2) {
        if (this.f == null) {
            this.f = new Hashtable();
        }
        if (string2 != null) {
            this.f.put(string, string2);
            return;
        }
        this.f.remove(string);
    }

    /*
     * Enabled aggressive block sorting
     * Enabled unnecessary exception pruning
     * Enabled aggressive exception aggregation
     */
    public final void a(az az2, Vector vector) {
        int n;
        on on2;
        on on3;
        block48: {
            String string;
            block47: {
                block44: {
                    boolean bl2;
                    block45: {
                        block46: {
                            block42: {
                                block43: {
                                    Hashtable cfr_ignored_0 = this.a.B;
                                    on3 = this.d;
                                    on2 = new on();
                                    vector.setSize(0);
                                    az2.a(this, vector);
                                    for (n = 0; n < vector.size(); ++n) {
                                        on2.b((on)vector.elementAt(n));
                                    }
                                    string = this.d("style");
                                    if (string != null) {
                                        on2.a(this.a, string);
                                    }
                                    if (this.b != null) {
                                        on2.a(this.b.d);
                                    }
                                    if ((string = this.d("align")) == null) {
                                        string = this.d("halign");
                                    }
                                    if (string == null) break block42;
                                    if ("left".equals(string = string.toLowerCase().trim())) break block43;
                                    if (!"right".equals(string)) {
                                        if ("center".equals(string)) {
                                            on2.a(11, 1103, (byte)16);
                                        }
                                        break block42;
                                    } else {
                                        on2.a(11, 48, (byte)16);
                                    }
                                    break block42;
                                }
                                on2.a(11, 37, (byte)16);
                            }
                            if ((string = this.d("width")) != null) {
                                try {
                                    if (!string.endsWith("%")) {
                                        if (string.endsWith("px")) {
                                            string = string.substring(0, string.length() - 2);
                                        }
                                        on2.a(52, 1000 * Integer.parseInt(string), (byte)9);
                                    } else {
                                        on2.a(52, 1000 * Integer.parseInt(string.substring(0, string.length() - 1)), (byte)1);
                                    }
                                }
                                catch (NumberFormatException numberFormatException) {}
                            }
                            if ((string = this.d("height")) != null) {
                                try {
                                    if (!string.endsWith("%")) {
                                        if (string.endsWith("px")) {
                                            string = string.substring(0, string.length() - 2);
                                        }
                                        on2.a(36, 1000 * Integer.parseInt(string), (byte)9);
                                    } else {
                                        on2.a(36, 1000 * Integer.parseInt(string.substring(0, string.length() - 1)), (byte)1);
                                    }
                                }
                                catch (NumberFormatException numberFormatException) {}
                            }
                            if ((string = this.d("bgcolor")) != null) {
                                on2.a(0, string, 0);
                            }
                            if (!(bl2 = "table".equals(this.c)) && !"td".equals(this.c) && !"th".equals(this.c)) break block44;
                            string = this.f("valign");
                            if (string == null) break block45;
                            if ("top".equals(string = string.toLowerCase().trim())) break block46;
                            if (!"bottom".equals(string)) {
                                if ("center".equals(string)) {
                                    on2.a(51, 1110, (byte)16);
                                }
                                break block45;
                            } else {
                                on2.a(51, 32, (byte)16);
                            }
                            break block45;
                        }
                        on2.a(51, 50, (byte)16);
                    }
                    if ((string = this.f("border")) != null) {
                        try {
                            n = Integer.parseInt(string);
                        }
                        catch (NumberFormatException numberFormatException) {
                            n = 1;
                        }
                        if (!bl2) {
                            n = Math.min(n, 1);
                        }
                        on2.a(65564, 1403, (byte)16, 0);
                        on2.a(65556, -3355444, (byte)17, 0);
                        on2.a(65560, 1000 * n, (byte)9, 0);
                    }
                    if (!bl2) {
                        string = this.f("cellpadding");
                        if (string != null) {
                            try {
                                n = Integer.parseInt(string);
                            }
                            catch (NumberFormatException numberFormatException) {
                                n = 0;
                            }
                            on2.a(65579, 1000 * n, (byte)9, 0);
                        }
                        if ((string = this.f("cellspacing")) != null) {
                            try {
                                n = Integer.parseInt(string);
                            }
                            catch (NumberFormatException numberFormatException) {
                                n = 0;
                            }
                            on2.a(65574, 500 * n, (byte)9, 0);
                        }
                    }
                }
                if ("font".equals(this.c)) break block47;
                if ("img".equals(this.c)) {
                    n = this.a("vspace", -1);
                    if (n >= 0) {
                        on2.a(43, n * 1000, (byte)9);
                        on2.a(45, n * 1000, (byte)9);
                    }
                    if ((n = this.a("hspace", -1)) >= 0) {
                        on2.a(46, n * 1000, (byte)9);
                        on2.a(44, n * 1000, (byte)9);
                    }
                }
                break block48;
            }
            string = this.d("color");
            if (string != null) {
                on2.a(4, string, 0);
            }
        }
        this.d = on2;
        for (n = 0; n < this.a(); ++n) {
            if (this.a(n) != 1) continue;
            this.b(n).a(az2, vector);
        }
        if (!this.a.E) {
            no no2 = this.a;
            n = on3 != null && on3.c(5) == this.d.c(5) && on3.a(false) == this.d.a(false) ? 0 : 1;
            no2.E = n;
        }
    }

    /*
     * Unable to fully structure code
     */
    public final void a(az var1_1) {
        block29: {
            var6_2 = (Integer)pv.e.get(this.c);
            var5_3 = 0;
            var7_4 = 0;
            if (var6_2 != null) {
                var5_3 = var6_2;
                if ((var5_3 & 16) == 0) {
                    if ((var5_3 & 4) == 0) {
                        if ((var5_3 & 8) == 0) {
                            if ((var5_3 & 32) != 0) {
                                var7_4 = 1;
                            }
                        } else {
                            var7_4 = 24;
                        }
                    } else {
                        var7_4 = 4;
                    }
                } else {
                    var7_4 = 16;
                }
            }
            var8_5 = var1_1.h;
            if ((var5_3 & 2) != 0) break block29;
            block13: while (true) {
                switch (var1_1.j) {
                    case 3: {
                        var3_7 = var1_1.e.toLowerCase();
                        if (var3_7.equals(this.c)) break block13;
                        var6_2 = (Integer)pv.e.get(var3_7);
                        if (var6_2 != null && (var6_2 & 2) != 0) ** GOTO lbl36
                        var2_6 = 1;
                        var4_8 = this.b;
                        while (var4_8 != null) {
                            if (!var4_8.c.equals(var3_7)) {
                                ++var2_6;
                                var4_8 = var4_8.b;
                                continue;
                            }
                            ** GOTO lbl35
                        }
                        var2_6 = -1;
lbl35:
                        // 2 sources

                        if (var2_6 <= 2 && var2_6 != -1) break;
lbl36:
                        // 2 sources

                        var1_1.c();
                        continue block13;
                    }
                    case 9: {
                        if ((var5_3 & 128) != 0) {
                            this.a(var1_1.b());
                        }
                        var1_1.c();
                        continue block13;
                    }
                    case 4: 
                    case 5: 
                    case 6: {
                        if ((var5_3 & 64) == 0) {
                            this.a(var1_1.b());
                        }
                        var1_1.c();
                        continue block13;
                    }
                    case 2: {
                        var3_7 = var1_1.e.toLowerCase();
                        var6_2 = (Integer)pv.e.get(var3_7);
                        var2_6 = var6_2 != null ? var6_2 : 0;
                        if ((var7_4 & var2_6) != 0) break;
                        if ((var2_6 & 8) != 0 && (var5_3 & 16) == 0) {
                            var4_8 = new pv(this.a, "tr");
                            this.a(var4_8);
                        } else {
                            var4_8 = new pv(this.a, var3_7);
                            this.a(var4_8);
                            for (var2_6 = 0; var2_6 < var1_1.d; ++var2_6) {
                                var4_8.a(var1_1.a(var2_6).toLowerCase(), var1_1.b(var2_6));
                            }
                            var1_1.c();
                        }
                        var4_8.a(var1_1);
                        continue block13;
                    }
                    default: {
                        var1_1.c();
                        continue block13;
                    }
                }
                break;
            }
            var1_1.c();
            {
                ** case 1:
            }
        }
        switch (var5_3 & -65536) {
            case 131072: {
                if (!this.a.a(this.d("media"))) break;
                this.a.w.a(this.a, this.a.z + "#" + var8_5, this.e());
                return;
            }
            case 393216: {
                var3_7 = this.d("href");
                if (var3_7 == null) break;
                this.a.z = var3_7;
                return;
            }
            case 327680: {
                this.e();
                return;
            }
            case 262144: {
                var3_7 = this.d("rel");
                if ("stylesheet alternate".equals(var3_7) || !"stylesheet".equals(var3_7) && !"text/css".equals(this.d("type")) || !this.a.a(this.d("media"))) break;
                this.a.x.a(this.a, 1, this.a.c(this.d("href")) + "#" + var8_5, 3, null);
            }
        }
    }
}

