/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.identity.User
 *  com.l7tech.message.HeadersKnob
 *  com.l7tech.message.Message
 *  com.l7tech.message.TcpKnob
 *  com.l7tech.policy.variable.Syntax$SyntaxErrorHandler
 *  com.l7tech.security.token.X509SigningSecurityToken
 *  com.l7tech.security.token.XmlSecurityToken
 *  com.l7tech.security.xml.processor.ProcessorResult
 *  com.l7tech.util.ArrayUtils
 *  com.l7tech.util.Functions
 *  com.l7tech.util.Functions$Unary
 *  org.jetbrains.annotations.NotNull
 */
package com.l7tech.server.policy.variable;

import com.l7tech.identity.User;
import com.l7tech.message.HeadersKnob;
import com.l7tech.message.Message;
import com.l7tech.message.TcpKnob;
import com.l7tech.policy.variable.Syntax;
import com.l7tech.security.token.X509SigningSecurityToken;
import com.l7tech.security.token.XmlSecurityToken;
import com.l7tech.security.xml.processor.ProcessorResult;
import com.l7tech.server.message.PolicyEnforcementContextFactory;
import com.l7tech.server.policy.variable.ExpandVariables;
import com.l7tech.server.policy.variable.bh;
import com.l7tech.server.policy.variable.e0;
import com.l7tech.server.policy.variable.e1;
import com.l7tech.server.policy.variable.e2;
import com.l7tech.server.policy.variable.e3;
import com.l7tech.server.policy.variable.e4;
import com.l7tech.server.policy.variable.e5;
import com.l7tech.server.policy.variable.e7;
import com.l7tech.server.policy.variable.e8;
import com.l7tech.server.policy.variable.e9;
import com.l7tech.server.policy.variable.e_;
import com.l7tech.server.policy.variable.eh;
import com.l7tech.server.policy.variable.ei;
import com.l7tech.server.policy.variable.ej;
import com.l7tech.server.policy.variable.ek;
import com.l7tech.server.policy.variable.el;
import com.l7tech.server.policy.variable.em;
import com.l7tech.server.policy.variable.en;
import com.l7tech.server.policy.variable.eo;
import com.l7tech.server.policy.variable.ep;
import com.l7tech.server.policy.variable.eq;
import com.l7tech.server.policy.variable.er;
import com.l7tech.server.policy.variable.es;
import com.l7tech.server.policy.variable.et;
import com.l7tech.server.policy.variable.eu;
import com.l7tech.server.policy.variable.ev;
import com.l7tech.server.policy.variable.ew;
import com.l7tech.server.policy.variable.ex;
import com.l7tech.server.policy.variable.ey;
import com.l7tech.server.policy.variable.ez;
import com.l7tech.server.policy.variable.fa;
import com.l7tech.server.policy.variable.fb;
import com.l7tech.server.policy.variable.fc;
import com.l7tech.server.policy.variable.fd;
import com.l7tech.server.policy.variable.fe;
import com.l7tech.server.policy.variable.ff;
import com.l7tech.server.policy.variable.fg;
import com.l7tech.util.ArrayUtils;
import com.l7tech.util.Functions;
import java.security.cert.X509Certificate;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Pattern;
import org.jetbrains.annotations.NotNull;

public class MessageSelector
implements ExpandVariables.Selector<Message> {
    public static final String MODIFIED_SUFFIX;
    private static Map<String, MessageAttributeSelector> a;
    private static final String b;
    private static final String c;
    private static final String d;
    private static final String e;
    private static final String f;
    private static final String g;
    private static final String h;
    private static final String i;
    private static final String j;
    private static final String k;
    private static final String l;
    private static final String m;
    private static final String n;
    private static final String o;
    private static final String p;
    private static final String q;
    private static final String r;
    private static final String s;
    private static final String t;
    private static final String u;
    private static final String v;
    private static final String w;
    private static final String x;
    private static final String y;
    private static final String z;
    private static final String A;
    private static final String B;
    private static final String C;
    private static final String D;
    private static final String E;
    private static final String F;
    private static final String G;
    private static final String H;
    private static final String I;
    private static final String J;
    private static final String K;
    private static final String L;
    private static final String M;
    private static final String N;
    private static final String O;
    private static final String P;
    private static final String Q;
    private static final String R;
    private static final String S;
    private static final String T;
    private static final String U;
    private static final String V;
    private static final String W;
    private static final String X;
    private static final String Y;
    private static final String Z;
    private static final String aa;
    private static final String ab;
    private static final String ac;
    private static final String ad;
    private static final String ae;
    private static final String af;
    private static final String ag;
    private static final String ah;
    private static final Map<String, Functions.Unary<Object, TcpKnob>> ai;
    private static final Map<String, String> aj;
    private static final Pattern ak;
    private static final MessageAttributeSelector al;
    private static final MessageAttributeSelector am;
    private static final MessageAttributeSelector an;
    private static final MessageAttributeSelector ao;
    private static final MessageAttributeSelector ap;
    private static final MessageAttributeSelector aq;
    private static final MessageAttributeSelector ar;
    private static final MessageAttributeSelector as;
    private static final MessageAttributeSelector at;
    private static final MessageAttributeSelector au;
    private static final MessageAttributeSelector av;
    private static final MessageAttributeSelector aw;
    private static final MessageAttributeSelector ax;
    private final MessageAttributeSelector ay = new eo(this);
    private final MessageAttributeSelector az = new ep(this);
    private static final MessageAttributeSelector aA;
    private static final MessageAttributeSelector aB;
    private static final MessageAttributeSelector aC;
    private static final MessageAttributeSelector aD;
    private static final MessageAttributeSelector aE;
    private static final MessageAttributeSelector aF;
    private static final MessageAttributeSelector aG;
    private static final MessageAttributeSelector aH;
    private static final MessageAttributeSelector aI;
    private static final MessageAttributeSelector aJ;
    private static final MessageAttributeSelector aK;
    private static final MessageAttributeSelector aL;
    private static final MessageAttributeSelector aM;
    private static final HeadersKnobSelector aN;
    private static final HeadersKnobSelector aO;
    private static final HeadersKnobSelector aP;
    private static final HeadersKnobSelector aQ;
    private static final MessageAttributeSelector aR;
    private static final MessageAttributeSelector aS;
    private static final e5 aT;
    private static final String[] bb;

    public static void registerSelector(String string, MessageAttributeSelector messageAttributeSelector) {
        a.put(string, messageAttributeSelector);
    }

    public static void unRegisterSelector(String string) {
        a.remove(string);
    }

    @Override
    public Class<Message> getContextObjectClass() {
        return Message.class;
    }

    /*
     * Loose catch block
     * WARNING - void declaration
     * Enabled force condition propagation
     * Lifted jumps to return sites
     */
    @Override
    public ExpandVariables.Selector.Selection select(String string, Message message, String string2, Syntax.SyntaxErrorHandler syntaxErrorHandler, boolean bl2) {
        void var6_55;
        String[] stringArray;
        String string3;
        String string4;
        block81: {
            block80: {
                block78: {
                    block79: {
                        block76: {
                            block77: {
                                block74: {
                                    block75: {
                                        block73: {
                                            block72: {
                                                string4 = string2.toLowerCase();
                                                string3 = string4;
                                                int n2 = string3.indexOf(46);
                                                if (n2 > -1) {
                                                    string3 = string3.substring(0, n2);
                                                }
                                                if (ArrayUtils.contains((Object[])MessageSelector.a(), (Object)string3)) break block72;
                                                try {
                                                    if (a.get(string3) != null) break block72;
                                                    return null;
                                                    catch (NumberFormatException numberFormatException) {
                                                        throw MessageSelector.a(numberFormatException);
                                                    }
                                                }
                                                catch (NumberFormatException numberFormatException) {
                                                    throw MessageSelector.a(numberFormatException);
                                                }
                                            }
                                            if (string4.startsWith((stringArray = bb)[72])) {
                                                HeadersKnobSelector headersKnobSelector = aN;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (string4.startsWith(stringArray[65])) {
                                                HeadersKnobSelector headersKnobSelector = aO;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (string4.equals(stringArray[28])) {
                                                MessageAttributeSelector messageAttributeSelector = aH;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (string4.equals(stringArray[41])) {
                                                MessageAttributeSelector messageAttributeSelector = aK;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[111].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = aw;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[54].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = ax;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[14].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = as;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[90].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = this.ay;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[83].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = this.az;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[116].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = at;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[84].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = av;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[94].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = au;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (string4.equals(stringArray[8])) {
                                                MessageAttributeSelector messageAttributeSelector = aA;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (string4.equals(stringArray[45])) {
                                                MessageAttributeSelector messageAttributeSelector = aB;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[106].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = aS;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (stringArray[101].equals(string4)) {
                                                MessageAttributeSelector messageAttributeSelector = aR;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (string4.startsWith(stringArray[46])) {
                                                MessageAttributeSelector messageAttributeSelector = aC;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            stringArray = bb;
                                            if (string4.startsWith(stringArray[118])) {
                                                MessageAttributeSelector messageAttributeSelector = aD;
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            }
                                            try {
                                                if (!string4.equals(bb[36]) && !string4.equals(bb[93])) break block73;
                                            }
                                            catch (NumberFormatException numberFormatException) {
                                                throw MessageSelector.a(numberFormatException);
                                            }
                                            MessageAttributeSelector messageAttributeSelector = this.a(message, string4);
                                            return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                        }
                                        stringArray = bb;
                                        if (string4.startsWith(stringArray[122])) {
                                            MessageAttributeSelector messageAttributeSelector = this.a(new bh<String>(stringArray[103], true, String.class, bh.b, message));
                                            return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                        }
                                        stringArray = bb;
                                        if (string4.startsWith(stringArray[66])) {
                                            String string5;
                                            String[] stringArray2 = ak.split(string2, 2);
                                            try {
                                                String string6 = string5 = stringArray2.length > 1 ? stringArray2[1] : null;
                                            }
                                            catch (NumberFormatException numberFormatException) {
                                                throw MessageSelector.a(numberFormatException);
                                            }
                                            if (string5 == null) {
                                                stringArray = bb;
                                                MessageAttributeSelector messageAttributeSelector = this.a(new bh<String>(stringArray[1], false, String.class, bh.b, message));
                                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                            } else {
                                                try {
                                                    Integer.parseInt(string5);
                                                    stringArray = bb;
                                                    MessageAttributeSelector messageAttributeSelector = this.a(new bh<String>(stringArray[1], false, String.class, bh.b, message));
                                                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                                }
                                                catch (NumberFormatException numberFormatException) {
                                                    stringArray = bb;
                                                    bh<User> bh2 = new bh<User>(stringArray[1], false, User.class, bh.a, message);
                                                    User user = (User)bh2.get(stringArray2[0], PolicyEnforcementContextFactory.getCurrent());
                                                    try {
                                                        if (user != null) return new ExpandVariables.Selector.Selection(user, string5);
                                                        return new ExpandVariables.Selector.Selection("");
                                                    }
                                                    catch (NumberFormatException numberFormatException2) {
                                                        throw MessageSelector.a(numberFormatException2);
                                                    }
                                                }
                                            }
                                        }
                                        stringArray = bb;
                                        if (string4.startsWith(stringArray[10])) {
                                            MessageAttributeSelector messageAttributeSelector = this.a(new bh<String>(stringArray[25], true, String.class, bh.c, message));
                                            return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                        }
                                        stringArray = bb;
                                        if (string4.startsWith(stringArray[96])) {
                                            MessageAttributeSelector messageAttributeSelector = this.a(new bh<String>(stringArray[114], false, String.class, bh.c, message));
                                            return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                        }
                                        try {
                                            if (!string4.startsWith(bb[55])) break block74;
                                            if (!string4.endsWith(bb[73])) break block75;
                                        }
                                        catch (NumberFormatException numberFormatException) {
                                            throw MessageSelector.a(numberFormatException);
                                        }
                                        HeadersKnobSelector headersKnobSelector = aQ;
                                        return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                    }
                                    MessageAttributeSelector messageAttributeSelector = aG;
                                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                }
                                try {
                                    if (!string4.startsWith(bb[71])) break block76;
                                    if (!string4.endsWith(bb[31])) break block77;
                                }
                                catch (NumberFormatException numberFormatException) {
                                    throw MessageSelector.a(numberFormatException);
                                }
                                MessageAttributeSelector messageAttributeSelector = aJ;
                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                            }
                            MessageAttributeSelector messageAttributeSelector = aE;
                            return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                        }
                        try {
                            if (!string4.startsWith(bb[51])) break block78;
                            if (!string4.endsWith(bb[31])) break block79;
                        }
                        catch (NumberFormatException numberFormatException) {
                            throw MessageSelector.a(numberFormatException);
                        }
                        MessageAttributeSelector messageAttributeSelector = aM;
                        return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                    }
                    MessageAttributeSelector messageAttributeSelector = aF;
                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                }
                stringArray = bb;
                if (string4.startsWith(stringArray[57])) {
                    HeadersKnobSelector headersKnobSelector = aP;
                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                }
                stringArray = bb;
                if (string4.startsWith(stringArray[110])) {
                    MessageAttributeSelector messageAttributeSelector = aI;
                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                }
                stringArray = bb;
                if (string4.startsWith(stringArray[98])) {
                    MessageAttributeSelector messageAttributeSelector = aL;
                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                }
                stringArray = bb;
                if (string4.startsWith(stringArray[113])) {
                    MessageAttributeSelector messageAttributeSelector = am;
                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                }
                stringArray = bb;
                if (string4.startsWith(stringArray[32])) {
                    MessageAttributeSelector messageAttributeSelector = al;
                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                }
                try {
                    try {
                        try {
                            if (string4.equals(bb[91]) || string4.equals(bb[112])) break block80;
                        }
                        catch (NumberFormatException numberFormatException) {
                            throw MessageSelector.a(numberFormatException);
                        }
                        if (string4.startsWith(bb[68])) break block80;
                    }
                    catch (NumberFormatException numberFormatException) {
                        throw MessageSelector.a(numberFormatException);
                    }
                    if (!string4.startsWith(bb[13])) break block81;
                }
                catch (NumberFormatException numberFormatException) {
                    throw MessageSelector.a(numberFormatException);
                }
            }
            e5 e52 = aT;
            return var6_55.select(message, string2, syntaxErrorHandler, bl2);
        }
        stringArray = bb;
        if (string4.equals(stringArray[109])) {
            MessageAttributeSelector messageAttributeSelector = an;
            return var6_55.select(message, string2, syntaxErrorHandler, bl2);
        } else {
            stringArray = bb;
            if (string4.equals(stringArray[97])) {
                MessageAttributeSelector messageAttributeSelector = ao;
                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
            } else {
                stringArray = bb;
                if (string4.equals(stringArray[20])) {
                    MessageAttributeSelector messageAttributeSelector = ap;
                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                } else {
                    stringArray = bb;
                    if (string4.equals(stringArray[60])) {
                        MessageAttributeSelector messageAttributeSelector = aq;
                        return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                    } else {
                        stringArray = bb;
                        if (string4.equals(stringArray[47])) {
                            MessageAttributeSelector messageAttributeSelector = ar;
                            return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                        } else if (a.get(string3) != null) {
                            MessageAttributeSelector messageAttributeSelector = a.get(string3);
                            return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                        } else {
                            Functions.Unary<Object, TcpKnob> unary = ai.get(string4);
                            if (unary != null) {
                                fg fg2 = new fg(unary);
                                return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                            } else {
                                String string7 = aj.get(string4);
                                if (string7 != null) {
                                    fe fe2 = new fe(string7);
                                    return var6_55.select(message, string2, syntaxErrorHandler, bl2);
                                } else {
                                    String string8 = syntaxErrorHandler.handleBadVariable(string2 + bb[121] + message.getClass().getName());
                                    try {
                                        if (!bl2) return null;
                                        throw new IllegalArgumentException(string8);
                                    }
                                    catch (NumberFormatException numberFormatException) {
                                        throw MessageSelector.a(numberFormatException);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    static String[] a() {
        String[] stringArray = new String[22];
        String[] stringArray2 = bb;
        stringArray[0] = stringArray2[15];
        stringArray[1] = stringArray2[78];
        stringArray[2] = stringArray2[74];
        stringArray[3] = stringArray2[16];
        stringArray[4] = stringArray2[119];
        stringArray[5] = stringArray2[70];
        stringArray[6] = stringArray2[92];
        stringArray[7] = stringArray2[120];
        stringArray[8] = stringArray2[52];
        stringArray[9] = stringArray2[23];
        stringArray[10] = stringArray2[99];
        stringArray[11] = stringArray2[56];
        stringArray[12] = stringArray2[27];
        stringArray[13] = stringArray2[44];
        stringArray[14] = stringArray2[88];
        stringArray[15] = stringArray2[29];
        stringArray[16] = stringArray2[48];
        stringArray[17] = stringArray2[7];
        stringArray[18] = stringArray2[1];
        stringArray[19] = stringArray2[103];
        stringArray[20] = stringArray2[114];
        stringArray[21] = stringArray2[25];
        return stringArray;
    }

    private MessageAttributeSelector a(bh bh2) {
        return new ex(this, bh2);
    }

    private MessageAttributeSelector a(Message message, String string) {
        return new ey(this, message, string);
    }

    private static String a(String string) {
        String string2;
        block7: {
            block8: {
                block6: {
                    try {
                        if (string != null) break block6;
                        string2 = null;
                        break block7;
                    }
                    catch (NumberFormatException numberFormatException) {
                        throw MessageSelector.a(numberFormatException);
                    }
                }
                try {
                    if (!string.startsWith(bb[11])) break block8;
                    string2 = bb[17];
                    break block7;
                }
                catch (NumberFormatException numberFormatException) {
                    throw MessageSelector.a(numberFormatException);
                }
            }
            try {
                string2 = string.startsWith(bb[42]) ? bb[3] : null;
            }
            catch (NumberFormatException numberFormatException) {
                throw MessageSelector.a(numberFormatException);
            }
        }
        return string2;
    }

    private static boolean b(String string) {
        try {
            Integer.parseInt(string);
            return true;
        }
        catch (NumberFormatException numberFormatException) {
            return false;
        }
    }

    private static int a(Message message, boolean bl2) {
        int n2 = 0;
        ProcessorResult processorResult = message.getSecurityKnob().getProcessorResult();
        if (processorResult != null) {
            for (XmlSecurityToken xmlSecurityToken : processorResult.getXmlSecurityTokens()) {
                try {
                    block8: {
                        try {
                            try {
                                if (!(xmlSecurityToken instanceof X509SigningSecurityToken)) continue;
                                if (!bl2) break block8;
                            }
                            catch (NumberFormatException numberFormatException) {
                                throw MessageSelector.a(numberFormatException);
                            }
                            if (!((X509SigningSecurityToken)xmlSecurityToken).isPossessionProved()) continue;
                        }
                        catch (NumberFormatException numberFormatException) {
                            throw MessageSelector.a(numberFormatException);
                        }
                    }
                    ++n2;
                }
                catch (NumberFormatException numberFormatException) {
                    throw MessageSelector.a(numberFormatException);
                }
            }
        }
        return n2;
    }

    private static X509Certificate a(Message message, int n2, boolean bl2) {
        X509Certificate x509Certificate;
        block14: {
            ArrayList<X509SigningSecurityToken> arrayList;
            block13: {
                arrayList = new ArrayList<X509SigningSecurityToken>();
                ProcessorResult processorResult = message.getSecurityKnob().getProcessorResult();
                if (processorResult != null) {
                    for (XmlSecurityToken xmlSecurityToken : processorResult.getXmlSecurityTokens()) {
                        try {
                            block12: {
                                try {
                                    try {
                                        if (!(xmlSecurityToken instanceof X509SigningSecurityToken)) continue;
                                        if (!bl2) break block12;
                                    }
                                    catch (NumberFormatException numberFormatException) {
                                        throw MessageSelector.a(numberFormatException);
                                    }
                                    if (!((X509SigningSecurityToken)xmlSecurityToken).isPossessionProved()) continue;
                                }
                                catch (NumberFormatException numberFormatException) {
                                    throw MessageSelector.a(numberFormatException);
                                }
                            }
                            arrayList.add((X509SigningSecurityToken)xmlSecurityToken);
                        }
                        catch (NumberFormatException numberFormatException) {
                            throw MessageSelector.a(numberFormatException);
                        }
                    }
                }
                try {
                    try {
                        if (n2 >= 1 && n2 <= arrayList.size()) break block13;
                    }
                    catch (NumberFormatException numberFormatException) {
                        throw MessageSelector.a(numberFormatException);
                    }
                    x509Certificate = null;
                    break block14;
                }
                catch (NumberFormatException numberFormatException) {
                    throw MessageSelector.a(numberFormatException);
                }
            }
            x509Certificate = ((X509SigningSecurityToken)arrayList.get(n2 - 1)).getCertificate();
        }
        return x509Certificate;
    }

    /*
     * Unable to fully structure code
     */
    static {
        block10: {
            block9: {
                var5 = new String[123];
                var3_1 = 0;
                var2_2 = "8\u0016m%De\u0005#\u0001x{Yr\u001c\u0011-\u0000icSn\u001c%\u0016|\u007fSd\u001d?\u0010o\u000b\u0004!I[\u0016H\r-\u0011xy\u001e;\u0006n%Ei\u000f\"\u001cslUe\u001a8\u001c{bUa\u001c)\u00063}Wl\u001d)[\u001d;\u0006n%Ei\u000f\"\u001cslUe\u001a8\u001c{bUa\u001c)\u00063hYu\u00068\u000b&\u0018n%^e\t(\u0010o%\u000b\u0004!I[\u0016H\r-\u0011xy\b9\u0006xyXa\u0005)\u000b/\u001as\u007fSn\u001c8\fmn\u0013&\u0018n%Wl\u0004$\u0010|oSr\u001e-\u0019hnE\u0010-\u0000icSn\u001c%\u0016|\u007fSd\f\"\u0006\u0017;\u0006n%Ue\u001a8\u001c{bUa\u001c)\u00063}Wl\u001d)[\u0004;\u0006n%\u0012$\u0001i{\u0018c\u0007#\u001etn@a\u00049\u0010n%\u0004?\u001cgn\u0004$\u0001i{\u0004!\u0004i\u007f\u0017;\u0006n%Ue\u001a8\u001c{bUa\u001c)\u00063}Wl\u001d)[\u0010$\u0001i{\u0018h\r-\u0011xyXa\u0005)\u0006\u00118\u0016m%De\u0005#\u0001xjRd\u001a)\u0006n\u0019!\u0004i\u007f\u0018c\u0007\"\u001bxhB.\u001a)\u0006mdXs\r/\u001ayn\f?\u0006q%Fr\u00078\u001a~dZ\f\u00068N+fr\u0007<\u0010o\u007fO\u00038\u0016m\u000e8\u0016m%Zi\u001b8\u0010s{Yr\u001c\u0010-\u0000icSn\u001c%\u0016|\u007fSd\f\"\u0006\u00108\u0016m%Zo\u000b-\u0019|oRr\r?\u0006\u0004?\u001a|{\u0010$\u0001i{\u0018h\r-\u0011xyXa\u0005)\u0006\u000b/\u001as\u007fSn\u001c8\fmn\u0011&\u0018n%Fr\u0007<\u0010o\u007fOn\t!\u0010n\tb\u0018ro_f\u0001)\u0011\f/\u001apfWn\fb\u0001d{S\n\u00068N+~e\t(\u0010o\u0014 \u001cn\u007fSn\r>[~dXc\u001d>\u0007xeUy\r&\u0018n%Fr\u0007<\u0010o\u007fO.\b<\u0014nxAo\u001a(\u000e.\u0000{mSrF-\u0019qdAe\f\u0002\u0010[\f$\u0001i{\u0018c\u0007#\u001etnE\r!\u0014teFa\u001a8[nbLe\u0014$\u0001i{\u0018a\u0004 \u001dxjRe\u001a:\u0014q~Ss\u001e;\u0006n%Ei\u000f\"\u001cslUe\u001a8\u001c{bUa\u001c)\u00063}Wl\u001d)[\u0016;\u0006n%Ue\u001a8\u001c{bUa\u001c)\u00063hYu\u00068\u0006.\u0000{mSr\u0014!\u0014teFa\u001a8[~dXt\r\"\u0001irFe\u0005<\u0014o\u007fE\u0019!\u0004i\u007f\u0018s\u001d.\u0006~y_b\rb\u0012ojXt\r(\u0004rx\b<\u0014nxAo\u001a(\u0019!\u0004i\u007f\u0018c\u0007\"\u001bxhB.\u001a)\u0006mdXs\r/\u001ayn\u000f?\u001a|{\u0018e\u0006:\u0010qdFe\u0006?\u0013&\u0018n%Wl\u0004$\u0010|oSr\u001e-\u0019hnE\u0003;\u0006n\r8\u0016m%Zo\u000b-\u0019mdDt\u000b$\u0001i{\u0018s\u001c-\u0001hx\u000b&\u0018n%^e\t(\u0010o%\b \u001cn\u007fSn\r>\r&\u0018n%Fr\u0007<\u0010o\u007fO.\f/\u001apfWn\fb\u0001d{S\r*\u0001m%De\u0018 \finNt\u001b!\u0004i\u007f\u0018c\u0007\"\u001bxhB.\u001b)\u0006nbYn\u0018>\u0010nnXt\r.\u0000{mSrF?\u0001|\u007fCs\r8\u0016m%Zo\u000b-\u0019udEt\u0012$\u0001i{\u0018h\r-\u0011xy@a\u00049\u0010n%\r$\u0001i{\u0018c\u0007#\u001etnE.\u0012$\u0001i{\u0018h\r-\u0011xy@a\u00049\u0010n%\u0011-\u0000icSn\u001c%\u0016|\u007fSd\u001d?\u0010o\r*\u0001m%De\u0018 \f~dRe\r$\u0001i{\u0018c\u0007#\u001etnE.\f8\u0016m%De\u0005#\u0001xbF\b!\u0014teFa\u001a8\u000f&\u0018n%^e\t(\u0010oeWm\r?\f$\u0001i{\u0018h\r-\u0011xy\u0018\tb\u0018ro_f\u0001)\u0011\u0003*\u0001m\f$\u0001i{\u0018v\r>\u0006tdX\u0014$\u0001i{\u0018a\u0004 \u001dxjRe\u001a:\u0014q~Ss\u000f&\u0018n%^e\t(\u0010oeWm\r?\u0003&\u0018n\n\u00068N+~e\t(\u0010o\f?\u001a|{\u0018v\r>\u0006tdX\r?\u0006q%Ee\u001b?\u001cre_d\u0012$\u0001i{\u0018c\u0007#\u001etn@a\u00049\u0010n%\u0010#\u0007tl_n\t \u0018|bXp\t>\u0001\r.\u0000{mSrF?\u0001|\u007fCs\u000b?\u0006q%]e\u0011?\u001cgn\u000b$\u0001i{\u0018s\u001c-\u0001hx\u000b8\u0016m%Zo\u000b-\u0019t{\u0004?\u001cgn\u000f?\u0006q%Ui\u0018$\u0010oxCi\u001c)\b!\u0014teFa\u001a8\f$\u0001i{\u0018c\u0007#\u001etnE\u0005<\u0014o\u007fE\b9\u0006xyXa\u0005)\u000e.\u0000{mSrF-\u0019qdAe\f\u0010$\u0001i{\u0018c\u0007#\u001etnXa\u0005)\u0006\u000f-\u0000icSn\u001c%\u0016|\u007fSd\f\"\r*\u0001m%De\u0018 \finNt\u0015&\u0018n%Wl\u0004<\u0007r{Sr\u001c5\u0003|gCe\u001b\u0003?\u0006q\f$\u0001i{\u0018h\r-\u0011xy\u0018\f?\u001a|{\u0018v\r>\u0006tdX\u0015&\u0018n%Wl\u0004<\u0007r{Sr\u001c5\u0003|gCe\u001b\u0012-\u0000icSn\u001c%\u0016|\u007fSd\u001d?\u0010ox\f\u00068N+fr\u0007<\u0010o\u007fO\u0014!\u0014teFa\u001a8[~dXt\r\"\u0001irFe\u000f?\u001a|{\u0018e\u0006:\u0010qdFe\u0006?\u0012/\u001apfWn\fb\u0005|yWm\r8\u0010o%\u0019!\u0004i\u007f\u0018s\u001d.\u0006~y_b\rb\u0012ojXt\r(\u0004rx\r*\u0001m%De\u0018 \f~dRe\u0011&\u0018n%Fr\u0007<\u0010o\u007fOn\t!\u0010n\f$\u0001i{\u0018v\r>\u0006tdX\u0010$\u0001i{\u0018c\u0007#\u001etnXa\u0005)\u0006\u0012/\u001apfWn\fb\u0005|yWm\r8\u0010o%\u000f-\u0000icSn\u001c%\u0016|\u007fSd\f\"\u000e8\u0016m%De\u0005#\u0001xcYs\u001c\r!\u0014teFa\u001a8[nbLe\u001b!\u0004i\u007f\u0018c\u0007\"\u001bxhB.\u001b)\u0006nbYn\u0018>\u0010nnXt\u0004;\u0006n%\u0007/\u001apfWn\f\u0010#\u0007tl_n\t \u0018|bXp\t>\u0001";
                var4_3 = "8\u0016m%De\u0005#\u0001x{Yr\u001c\u0011-\u0000icSn\u001c%\u0016|\u007fSd\u001d?\u0010o\u000b\u0004!I[\u0016H\r-\u0011xy\u001e;\u0006n%Ei\u000f\"\u001cslUe\u001a8\u001c{bUa\u001c)\u00063}Wl\u001d)[\u001d;\u0006n%Ei\u000f\"\u001cslUe\u001a8\u001c{bUa\u001c)\u00063hYu\u00068\u000b&\u0018n%^e\t(\u0010o%\u000b\u0004!I[\u0016H\r-\u0011xy\b9\u0006xyXa\u0005)\u000b/\u001as\u007fSn\u001c8\fmn\u0013&\u0018n%Wl\u0004$\u0010|oSr\u001e-\u0019hnE\u0010-\u0000icSn\u001c%\u0016|\u007fSd\f\"\u0006\u0017;\u0006n%Ue\u001a8\u001c{bUa\u001c)\u00063}Wl\u001d)[\u0004;\u0006n%\u0012$\u0001i{\u0018c\u0007#\u001etn@a\u00049\u0010n%\u0004?\u001cgn\u0004$\u0001i{\u0004!\u0004i\u007f\u0017;\u0006n%Ue\u001a8\u001c{bUa\u001c)\u00063}Wl\u001d)[\u0010$\u0001i{\u0018h\r-\u0011xyXa\u0005)\u0006\u00118\u0016m%De\u0005#\u0001xjRd\u001a)\u0006n\u0019!\u0004i\u007f\u0018c\u0007\"\u001bxhB.\u001a)\u0006mdXs\r/\u001ayn\f?\u0006q%Fr\u00078\u001a~dZ\f\u00068N+fr\u0007<\u0010o\u007fO\u00038\u0016m\u000e8\u0016m%Zi\u001b8\u0010s{Yr\u001c\u0010-\u0000icSn\u001c%\u0016|\u007fSd\f\"\u0006\u00108\u0016m%Zo\u000b-\u0019|oRr\r?\u0006\u0004?\u001a|{\u0010$\u0001i{\u0018h\r-\u0011xyXa\u0005)\u0006\u000b/\u001as\u007fSn\u001c8\fmn\u0011&\u0018n%Fr\u0007<\u0010o\u007fOn\t!\u0010n\tb\u0018ro_f\u0001)\u0011\f/\u001apfWn\fb\u0001d{S\n\u00068N+~e\t(\u0010o\u0014 \u001cn\u007fSn\r>[~dXc\u001d>\u0007xeUy\r&\u0018n%Fr\u0007<\u0010o\u007fO.\b<\u0014nxAo\u001a(\u000e.\u0000{mSrF-\u0019qdAe\f\u0002\u0010[\f$\u0001i{\u0018c\u0007#\u001etnE\r!\u0014teFa\u001a8[nbLe\u0014$\u0001i{\u0018a\u0004 \u001dxjRe\u001a:\u0014q~Ss\u001e;\u0006n%Ei\u000f\"\u001cslUe\u001a8\u001c{bUa\u001c)\u00063}Wl\u001d)[\u0016;\u0006n%Ue\u001a8\u001c{bUa\u001c)\u00063hYu\u00068\u0006.\u0000{mSr\u0014!\u0014teFa\u001a8[~dXt\r\"\u0001irFe\u0005<\u0014o\u007fE\u0019!\u0004i\u007f\u0018s\u001d.\u0006~y_b\rb\u0012ojXt\r(\u0004rx\b<\u0014nxAo\u001a(\u0019!\u0004i\u007f\u0018c\u0007\"\u001bxhB.\u001a)\u0006mdXs\r/\u001ayn\u000f?\u001a|{\u0018e\u0006:\u0010qdFe\u0006?\u0013&\u0018n%Wl\u0004$\u0010|oSr\u001e-\u0019hnE\u0003;\u0006n\r8\u0016m%Zo\u000b-\u0019mdDt\u000b$\u0001i{\u0018s\u001c-\u0001hx\u000b&\u0018n%^e\t(\u0010o%\b \u001cn\u007fSn\r>\r&\u0018n%Fr\u0007<\u0010o\u007fO.\f/\u001apfWn\fb\u0001d{S\r*\u0001m%De\u0018 \finNt\u001b!\u0004i\u007f\u0018c\u0007\"\u001bxhB.\u001b)\u0006nbYn\u0018>\u0010nnXt\r.\u0000{mSrF?\u0001|\u007fCs\r8\u0016m%Zo\u000b-\u0019udEt\u0012$\u0001i{\u0018h\r-\u0011xy@a\u00049\u0010n%\r$\u0001i{\u0018c\u0007#\u001etnE.\u0012$\u0001i{\u0018h\r-\u0011xy@a\u00049\u0010n%\u0011-\u0000icSn\u001c%\u0016|\u007fSd\u001d?\u0010o\r*\u0001m%De\u0018 \f~dRe\r$\u0001i{\u0018c\u0007#\u001etnE.\f8\u0016m%De\u0005#\u0001xbF\b!\u0014teFa\u001a8\u000f&\u0018n%^e\t(\u0010oeWm\r?\f$\u0001i{\u0018h\r-\u0011xy\u0018\tb\u0018ro_f\u0001)\u0011\u0003*\u0001m\f$\u0001i{\u0018v\r>\u0006tdX\u0014$\u0001i{\u0018a\u0004 \u001dxjRe\u001a:\u0014q~Ss\u000f&\u0018n%^e\t(\u0010oeWm\r?\u0003&\u0018n\n\u00068N+~e\t(\u0010o\f?\u001a|{\u0018v\r>\u0006tdX\r?\u0006q%Ee\u001b?\u001cre_d\u0012$\u0001i{\u0018c\u0007#\u001etn@a\u00049\u0010n%\u0010#\u0007tl_n\t \u0018|bXp\t>\u0001\r.\u0000{mSrF?\u0001|\u007fCs\u000b?\u0006q%]e\u0011?\u001cgn\u000b$\u0001i{\u0018s\u001c-\u0001hx\u000b8\u0016m%Zo\u000b-\u0019t{\u0004?\u001cgn\u000f?\u0006q%Ui\u0018$\u0010oxCi\u001c)\b!\u0014teFa\u001a8\f$\u0001i{\u0018c\u0007#\u001etnE\u0005<\u0014o\u007fE\b9\u0006xyXa\u0005)\u000e.\u0000{mSrF-\u0019qdAe\f\u0010$\u0001i{\u0018c\u0007#\u001etnXa\u0005)\u0006\u000f-\u0000icSn\u001c%\u0016|\u007fSd\f\"\r*\u0001m%De\u0018 \finNt\u0015&\u0018n%Wl\u0004<\u0007r{Sr\u001c5\u0003|gCe\u001b\u0003?\u0006q\f$\u0001i{\u0018h\r-\u0011xy\u0018\f?\u001a|{\u0018v\r>\u0006tdX\u0015&\u0018n%Wl\u0004<\u0007r{Sr\u001c5\u0003|gCe\u001b\u0012-\u0000icSn\u001c%\u0016|\u007fSd\u001d?\u0010ox\f\u00068N+fr\u0007<\u0010o\u007fO\u0014!\u0014teFa\u001a8[~dXt\r\"\u0001irFe\u000f?\u001a|{\u0018e\u0006:\u0010qdFe\u0006?\u0012/\u001apfWn\fb\u0005|yWm\r8\u0010o%\u0019!\u0004i\u007f\u0018s\u001d.\u0006~y_b\rb\u0012ojXt\r(\u0004rx\r*\u0001m%De\u0018 \f~dRe\u0011&\u0018n%Fr\u0007<\u0010o\u007fOn\t!\u0010n\f$\u0001i{\u0018v\r>\u0006tdX\u0010$\u0001i{\u0018c\u0007#\u001etnXa\u0005)\u0006\u0012/\u001apfWn\fb\u0005|yWm\r8\u0010o%\u000f-\u0000icSn\u001c%\u0016|\u007fSd\f\"\u000e8\u0016m%De\u0005#\u0001xcYs\u001c\r!\u0014teFa\u001a8[nbLe\u001b!\u0004i\u007f\u0018c\u0007\"\u001bxhB.\u001b)\u0006nbYn\u0018>\u0010nnXt\u0004;\u0006n%\u0007/\u001apfWn\f\u0010#\u0007tl_n\t \u0018|bXp\t>\u0001".length();
                var1_4 = 14;
                var0_5 = -1;
lbl7:
                // 2 sources

                while (true) {
                    v0 = 26;
                    v1 = ++var0_5;
                    v2 = var2_2.substring(v1, v1 + var1_4);
                    v3 = -1;
                    break block9;
                    break;
                }
lbl13:
                // 1 sources

                while (true) {
                    var5[var3_1++] = MessageSelector.a(v0, MessageSelector.c(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    var2_2 = "j\u001au-\u0012+\u0006oeUh\u001a#\u0010zyUb\u001b9\u0016i~";
                    var4_3 = "j\u001au-\u0012+\u0006oeUh\u001a#\u0010zyUb\u001b9\u0016i~".length();
                    var1_4 = 4;
                    var0_5 = -1;
lbl22:
                    // 2 sources

                    while (true) {
                        v0 = 28;
                        v4 = ++var0_5;
                        v2 = var2_2.substring(v4, v4 + var1_4);
                        v3 = 0;
                        break block9;
                        break;
                    }
                    break;
                }
lbl28:
                // 1 sources

                while (true) {
                    var5[var3_1++] = MessageSelector.a(v0, MessageSelector.c(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    break block10;
                    break;
                }
            }
            switch (v3) {
                default: {
                    ** continue;
                }
                ** case 0:
lbl39:
                // 1 sources

                ** continue;
            }
        }
        MessageSelector.bb = var5;
        MessageSelector.n = MessageSelector.bb[40];
        MessageSelector.u = MessageSelector.bb[64];
        MessageSelector.S = MessageSelector.bb[114];
        MessageSelector.ac = MessageSelector.bb[67];
        MessageSelector.W = MessageSelector.bb[5];
        MessageSelector.z = MessageSelector.bb[4];
        MessageSelector.ag = MessageSelector.bb[108];
        MessageSelector.I = MessageSelector.bb[53];
        MessageSelector.O = MessageSelector.bb[48];
        MessageSelector.N = MessageSelector.bb[21];
        MessageSelector.y = MessageSelector.bb[17];
        MessageSelector.t = MessageSelector.bb[95];
        MessageSelector.d = MessageSelector.bb[18];
        MessageSelector.Y = MessageSelector.bb[9];
        MessageSelector.B = MessageSelector.bb[19];
        MessageSelector.R = MessageSelector.bb[103];
        MessageSelector.e = MessageSelector.bb[76];
        MessageSelector.M = MessageSelector.bb[81];
        MessageSelector.ad = MessageSelector.bb[59];
        MessageSelector.af = MessageSelector.bb[117];
        MessageSelector.s = MessageSelector.bb[39];
        MessageSelector.aa = MessageSelector.bb[30];
        MessageSelector.ah = MessageSelector.bb[34];
        MessageSelector.x = MessageSelector.bb[43];
        MessageSelector.p = MessageSelector.bb[37];
        MessageSelector.k = MessageSelector.bb[88];
        MessageSelector.P = MessageSelector.bb[7];
        MessageSelector.b = MessageSelector.bb[100];
        MessageSelector.Z = MessageSelector.bb[35];
        MessageSelector.A = MessageSelector.bb[3];
        MessageSelector.c = MessageSelector.bb[63];
        MessageSelector.i = MessageSelector.bb[92];
        MessageSelector.MODIFIED_SUFFIX = MessageSelector.bb[31];
        MessageSelector.o = MessageSelector.bb[61];
        MessageSelector.g = MessageSelector.bb[86];
        MessageSelector.Q = MessageSelector.bb[1];
        MessageSelector.U = MessageSelector.bb[50];
        MessageSelector.r = MessageSelector.bb[107];
        MessageSelector.C = MessageSelector.bb[69];
        MessageSelector.w = MessageSelector.bb[12];
        MessageSelector.D = MessageSelector.bb[115];
        MessageSelector.F = MessageSelector.bb[26];
        MessageSelector.j = MessageSelector.bb[120];
        MessageSelector.J = MessageSelector.bb[24];
        MessageSelector.E = MessageSelector.bb[0];
        MessageSelector.f = MessageSelector.bb[75];
        MessageSelector.ab = MessageSelector.bb[102];
        MessageSelector.V = MessageSelector.bb[80];
        MessageSelector.l = MessageSelector.bb[29];
        MessageSelector.G = MessageSelector.bb[87];
        MessageSelector.ae = MessageSelector.bb[49];
        MessageSelector.X = MessageSelector.bb[77];
        MessageSelector.v = MessageSelector.bb[82];
        MessageSelector.m = MessageSelector.bb[105];
        MessageSelector.K = MessageSelector.bb[89];
        MessageSelector.h = MessageSelector.bb[70];
        MessageSelector.L = MessageSelector.bb[85];
        MessageSelector.T = MessageSelector.bb[25];
        MessageSelector.q = MessageSelector.bb[58];
        MessageSelector.H = MessageSelector.bb[62];
        MessageSelector.a = new HashMap<String, MessageAttributeSelector>();
        MessageSelector.ai = Collections.unmodifiableMap(new HashMap<String, Functions.Unary<Object, TcpKnob>>(){
            static final long serialVersionUID = -5648771712515017644L;
            private static final String[] a;
            {
                String[] stringArray = a;
                this.put(stringArray[8], Functions.propertyTransform(TcpKnob.class, (String)stringArray[4]));
                this.put(stringArray[6], Functions.propertyTransform(TcpKnob.class, (String)stringArray[11]));
                this.put(stringArray[15], Functions.propertyTransform(TcpKnob.class, (String)stringArray[14]));
                this.put(stringArray[16], Functions.propertyTransform(TcpKnob.class, (String)stringArray[2]));
                this.put(stringArray[10], Functions.propertyTransform(TcpKnob.class, (String)stringArray[3]));
                this.put(stringArray[12], Functions.propertyTransform(TcpKnob.class, (String)stringArray[0]));
                this.put(stringArray[17], Functions.propertyTransform(TcpKnob.class, (String)stringArray[1]));
                this.put(stringArray[13], Functions.propertyTransform(TcpKnob.class, (String)stringArray[7]));
                this.put(stringArray[9], Functions.propertyTransform(TcpKnob.class, (String)stringArray[5]));
            }

            /*
             * Unable to fully structure code
             */
            static {
                block10: {
                    block9: {
                        var5 = new String[18];
                        var3_1 = 0;
                        var2_2 = "@5> 6]>H(82)\t@5> 6T5_.\n^?0..y\nC()\f@5> 6]>H(82)\r^?0..y\u001bH>/$)o\u0011@5> 6P3_.8/?n\nC()\fX9-o(y7C.8(*\t@5> 6L5^.\u0011X9-o(y7C.8 >x(I).\u000eX9-o6u)X?315n.\u0010X9-o6s9M6<%>n?_)\r^?0..y\u001bH>/$)o\u000bX9-o6s9M641\rX9-o6s9M6-.(h\n^?0..y\u0012C))\u000eX9-o(y7C.8)5o.";
                        var4_3 = "@5> 6]>H(82)\t@5> 6T5_.\n^?0..y\nC()\f@5> 6]>H(82)\r^?0..y\u001bH>/$)o\u0011@5> 6P3_.8/?n\nC()\fX9-o(y7C.8(*\t@5> 6L5^.\u0011X9-o(y7C.8 >x(I).\u000eX9-o6u)X?315n.\u0010X9-o6s9M6<%>n?_)\r^?0..y\u001bH>/$)o\u000bX9-o6s9M641\rX9-o6s9M6-.(h\n^?0..y\u0012C))\u000eX9-o(y7C.8)5o.".length();
                        var1_4 = 12;
                        var0_5 = -1;
lbl7:
                        // 2 sources

                        while (true) {
                            v0 = 47;
                            v1 = ++var0_5;
                            v2 = var2_2.substring(v1, v1 + var1_4);
                            v3 = -1;
                            break block9;
                            break;
                        }
lbl13:
                        // 1 sources

                        while (true) {
                            var5[var3_1++] = 1.a(v0, 1.a(v2));
                            if ((var0_5 += var1_4) < var4_3) {
                                var1_4 = var2_2.charAt(var0_5);
                                ** continue;
                            }
                            var2_2 = "_>*h/~0D)?62i)\r_>*h1t>J12).o";
                            var4_3 = "_>*h/~0D)?62i)\r_>*h1t>J12).o".length();
                            var1_4 = 14;
                            var0_5 = -1;
lbl22:
                            // 2 sources

                            while (true) {
                                v0 = 40;
                                v4 = ++var0_5;
                                v2 = var2_2.substring(v4, v4 + var1_4);
                                v3 = 0;
                                break block9;
                                break;
                            }
                            break;
                        }
lbl28:
                        // 1 sources

                        while (true) {
                            var5[var3_1++] = 1.a(v0, 1.a(v2));
                            if ((var0_5 += var1_4) < var4_3) {
                                var1_4 = var2_2.charAt(var0_5);
                                ** continue;
                            }
                            break block10;
                            break;
                        }
                    }
                    switch (v3) {
                        default: {
                            ** continue;
                        }
                        ** case 0:
lbl39:
                        // 1 sources

                        ** continue;
                    }
                }
                1.a = var5;
            }

            private static char[] a(String string) {
                char[] cArray = string.toCharArray();
                if (cArray.length < 2) {
                    cArray = cArray;
                    cArray[0] = (char)(cArray[0] ^ 0x75);
                }
                return cArray;
            }

            /*
             * Handled impossible loop by duplicating code
             * Enabled aggressive block sorting
             */
            private static String a(int n2, char[] cArray) {
                char[] cArray2;
                block11: {
                    int n3;
                    int n4;
                    int n5;
                    block10: {
                        n5 = n2;
                        cArray2 = cArray;
                        n4 = cArray.length;
                        n3 = 0;
                        if (!true) break block10;
                        n4 = n4;
                        if (n4 <= n3) break block11;
                    }
                    do {
                        n5 = n5;
                        cArray2 = cArray2;
                        int n6 = n3;
                        cArray2[n6] = (char)(cArray2[n6] ^ (n5 ^ (switch (n3 % 7) {
                            case 0 -> 3;
                            case 1 -> 117;
                            case 2 -> 114;
                            case 3 -> 110;
                            case 4 -> 117;
                            case 5 -> 51;
                            default -> 117;
                        })));
                        ++n3;
                        n4 = n4;
                    } while (n4 > n3);
                }
                return new String(cArray2).intern();
            }
        });
        MessageSelector.aj = Collections.unmodifiableMap(new HashMap<String, String>(){
            static final long serialVersionUID = -1660550116639231764L;
            private static final String[] a;
            {
                String[] stringArray = a;
                this.put(stringArray[4], stringArray[2]);
                this.put(stringArray[3], stringArray[0]);
                this.put(stringArray[8], stringArray[5]);
                this.put(stringArray[9], stringArray[7]);
                this.put(stringArray[6], stringArray[1]);
            }

            /*
             * Unable to fully structure code
             */
            static {
                block10: {
                    block9: {
                        var5 = new String[10];
                        var3_1 = 0;
                        var2_2 = "qH\u0002,m6_5Z\f?i.[o\u0007\u001b(n7[h]G&z;ah@\u0013(-xF\u0004csuJ~J\u0001cl'LmL\u001bcl1YXF\u0007#z!Jt[9\"p.}tG\n8m0[uJ\u0010$qH\u0002,m6_5Z\f?i.[o\u0007\u001b(n7[h]G.v2V~[6>j+J~\u000bhZ\u0005ct'Gh@\u0013(\u000fhZ\u0005c|+NsL\u001b>j+J~&qH\u0002,m6_5Z\f?i.[o\u0007\u001b(n7[h]G>l.ahL\u001a>v-PD@\r\u0014w@\u001a9z,[i\u0007\n\"q!Ki[\f#|;2t[\u000ec~2_xA\fck-SxH\u001dcj6Ww\u0007\u0007(klM~J\u001c?z\u001dNiF\u001d\"|-RD_\f?l+Qu";
                        var4_3 = "qH\u0002,m6_5Z\f?i.[o\u0007\u001b(n7[h]G&z;ah@\u0013(-xF\u0004csuJ~J\u0001cl'LmL\u001bcl1YXF\u0007#z!Jt[9\"p.}tG\n8m0[uJ\u0010$qH\u0002,m6_5Z\f?i.[o\u0007\u001b(n7[h]G.v2V~[6>j+J~\u000bhZ\u0005ct'Gh@\u0013(\u000fhZ\u0005c|+NsL\u001b>j+J~&qH\u0002,m6_5Z\f?i.[o\u0007\u001b(n7[h]G>l.ahL\u001a>v-PD@\r\u0014w@\u001a9z,[i\u0007\n\"q!Ki[\f#|;2t[\u000ec~2_xA\fck-SxH\u001dcj6Ww\u0007\u0007(klM~J\u001c?z\u001dNiF\u001d\"|-RD_\f?l+Qu".length();
                        var1_4 = 32;
                        var0_5 = -1;
lbl7:
                        // 2 sources

                        while (true) {
                            v0 = 53;
                            v1 = ++var0_5;
                            v2 = var2_2.substring(v1, v1 + var1_4);
                            v3 = -1;
                            break block9;
                            break;
                        }
lbl13:
                        // 1 sources

                        while (true) {
                            var5[var3_1++] = 2.a(v0, 2.a(v2));
                            if ((var0_5 += var1_4) < var4_3) {
                                var1_4 = var2_2.charAt(var0_5);
                                ** continue;
                            }
                            var2_2 = "-\u001f@&)b\b-\u0005Cf3c\f-\u001f@&*u\u0014*\u0003Og6";
                            var4_3 = "-\u001f@&)b\b-\u0005Cf3c\f-\u001f@&*u\u0014*\u0003Og6".length();
                            var1_4 = 13;
                            var0_5 = -1;
lbl22:
                            // 2 sources

                            while (true) {
                                v0 = 112;
                                v4 = ++var0_5;
                                v2 = var2_2.substring(v4, v4 + var1_4);
                                v3 = 0;
                                break block9;
                                break;
                            }
                            break;
                        }
lbl28:
                        // 1 sources

                        while (true) {
                            var5[var3_1++] = 2.a(v0, 2.a(v2));
                            if ((var0_5 += var1_4) < var4_3) {
                                var1_4 = var2_2.charAt(var0_5);
                                ** continue;
                            }
                            break block10;
                            break;
                        }
                    }
                    switch (v3) {
                        default: {
                            ** continue;
                        }
                        ** case 0:
lbl39:
                        // 1 sources

                        ** continue;
                    }
                }
                2.a = var5;
            }

            private static char[] a(String string) {
                char[] cArray = string.toCharArray();
                if (cArray.length < 2) {
                    cArray = cArray;
                    cArray[0] = (char)(cArray[0] ^ 0xB);
                }
                return cArray;
            }

            /*
             * Handled impossible loop by duplicating code
             * Enabled aggressive block sorting
             */
            private static String a(int n2, char[] cArray) {
                char[] cArray2;
                block11: {
                    int n3;
                    int n4;
                    int n5;
                    block10: {
                        n5 = n2;
                        cArray2 = cArray;
                        n4 = cArray.length;
                        n3 = 0;
                        if (!true) break block10;
                        n4 = n4;
                        if (n4 <= n3) break block11;
                    }
                    do {
                        n5 = n5;
                        cArray2 = cArray2;
                        int n6 = n3;
                        cArray2[n6] = (char)(cArray2[n6] ^ (n5 ^ (switch (n3 % 7) {
                            case 0 -> 46;
                            case 1 -> 28;
                            case 2 -> 92;
                            case 3 -> 120;
                            case 4 -> 42;
                            case 5 -> 119;
                            default -> 11;
                        })));
                        ++n3;
                        n4 = n4;
                    } while (n4 > n3);
                }
                return new String(cArray2).intern();
            }
        });
        var0_6 = MessageSelector.bb;
        MessageSelector.ak = Pattern.compile(var0_6[38]);
        MessageSelector.al = new ez();
        MessageSelector.am = new e0();
        MessageSelector.an = new e1();
        MessageSelector.ao = new e2();
        MessageSelector.ap = new e3();
        MessageSelector.aq = new eh();
        MessageSelector.ar = new ei();
        MessageSelector.as = new ej();
        MessageSelector.at = new ek();
        MessageSelector.au = new el();
        MessageSelector.av = new em();
        MessageSelector.aw = new e4();
        MessageSelector.ax = new en();
        MessageSelector.aA = new eq();
        MessageSelector.aB = new er();
        MessageSelector.aC = new es();
        MessageSelector.aD = new et();
        MessageSelector.aE = new eu();
        MessageSelector.aF = new ev();
        MessageSelector.aG = new ew();
        MessageSelector.aH = new e_(var0_6[2]);
        MessageSelector.aI = new e_(var0_6[22]);
        MessageSelector.aJ = new e_(var0_6[79]);
        MessageSelector.aK = new e7(var0_6[6]);
        MessageSelector.aL = new e8(var0_6[104]);
        MessageSelector.aM = new e9(var0_6[33]);
        MessageSelector.aN = new fa(var0_6[100]);
        MessageSelector.aO = new fb(var0_6[63]);
        MessageSelector.aP = new fc(var0_6[35]);
        MessageSelector.aQ = new fd(var0_6[5]);
        MessageSelector.aR = new ff(true);
        MessageSelector.aS = new ff(false);
        MessageSelector.aT = new e5();
    }

    private static NumberFormatException a(NumberFormatException numberFormatException) {
        return numberFormatException;
    }

    private static char[] c(String string) {
        char[] cArray = string.toCharArray();
        if (cArray.length < 2) {
            cArray = cArray;
            cArray[0] = (char)(cArray[0] ^ 0x72);
        }
        return cArray;
    }

    /*
     * Handled impossible loop by duplicating code
     * Enabled aggressive block sorting
     */
    private static String a(int n2, char[] cArray) {
        char[] cArray2;
        block11: {
            int n3;
            int n4;
            int n5;
            block10: {
                n5 = n2;
                cArray2 = cArray;
                n4 = cArray.length;
                n3 = 0;
                if (!true) break block10;
                n4 = n4;
                if (n4 <= n3) break block11;
            }
            do {
                n5 = n5;
                cArray2 = cArray2;
                int n6 = n3;
                cArray2[n6] = (char)(cArray2[n6] ^ (n5 ^ (switch (n3 % 7) {
                    case 0 -> 86;
                    case 1 -> 111;
                    case 2 -> 7;
                    case 3 -> 17;
                    case 4 -> 44;
                    case 5 -> 26;
                    default -> 114;
                })));
                ++n3;
                n4 = n4;
            } while (n4 > n3);
        }
        return new String(cArray2).intern();
    }

    public static interface MessageAttributeSelector {
        public ExpandVariables.Selector.Selection select(Message var1, String var2, Syntax.SyntaxErrorHandler var3, boolean var4);
    }

    public static abstract class HeadersKnobSelector
    implements MessageAttributeSelector {
        final String a;
        private static final String[] b;

        public HeadersKnobSelector(String string) {
            this.a = string;
        }

        @Override
        public ExpandVariables.Selector.Selection select(Message message, String string, Syntax.SyntaxErrorHandler syntaxErrorHandler, boolean bl2) {
            String string2;
            Object object;
            boolean bl3 = false;
            String string3 = string.substring(this.a.length());
            HeadersKnob headersKnob = (HeadersKnob)message.getKnob(HeadersKnob.class);
            if (headersKnob != null) {
                bl3 = true;
                object = this.createSelection(string3, headersKnob);
                try {
                    if (null != object) {
                        return object;
                    }
                }
                catch (IllegalArgumentException illegalArgumentException) {
                    throw HeadersKnobSelector.a(illegalArgumentException);
                }
            }
            try {
                string2 = bl3 ? string3 + b[0] : string + b[1] + message.getClass().getName();
            }
            catch (IllegalArgumentException illegalArgumentException) {
                throw HeadersKnobSelector.a(illegalArgumentException);
            }
            object = string2;
            String string4 = syntaxErrorHandler.handleBadVariable((String)object);
            try {
                if (bl2) {
                    throw new IllegalArgumentException(string4);
                }
            }
            catch (IllegalArgumentException illegalArgumentException) {
                throw HeadersKnobSelector.a(illegalArgumentException);
            }
            return null;
        }

        protected abstract ExpandVariables.Selector.Selection createSelection(String var1, HeadersKnob var2);

        private static IllegalArgumentException a(IllegalArgumentException illegalArgumentException) {
            return illegalArgumentException;
        }

        /*
         * Enabled aggressive block sorting
         */
        static {
            String[] stringArray = new String[2];
            int n2 = 0;
            String string = "94-~2D{9+)lvDdi(1\u000495&?";
            int n3 = "94-~2D{9+)lvDdi(1\u000495&?".length();
            int n4 = 17;
            int n5 = -1;
            while (true) {
                int n6 = ++n5;
                stringArray[n2++] = HeadersKnobSelector.a(104, HeadersKnobSelector.a(string.substring(n6, n6 + n4)));
                if ((n5 += n4) >= n3) {
                    b = stringArray;
                    return;
                }
                n4 = string.charAt(n5);
            }
        }

        private static char[] a(String string) {
            char[] cArray = string.toCharArray();
            if (cArray.length < 2) {
                cArray = cArray;
                cArray[0] = (char)(cArray[0] ^ 0x61);
            }
            return cArray;
        }

        /*
         * Handled impossible loop by duplicating code
         * Enabled aggressive block sorting
         */
        private static String a(int n2, char[] cArray) {
            char[] cArray2;
            block11: {
                int n3;
                int n4;
                int n5;
                block10: {
                    n5 = n2;
                    cArray2 = cArray;
                    n4 = cArray.length;
                    n3 = 0;
                    if (!true) break block10;
                    n4 = n4;
                    if (n4 <= n3) break block11;
                }
                do {
                    n5 = n5;
                    cArray2 = cArray2;
                    int n6 = n3;
                    cArray2[n6] = (char)(cArray2[n6] ^ (n5 ^ (switch (n3 % 7) {
                        case 0 -> 113;
                        case 1 -> 52;
                        case 2 -> 32;
                        case 3 -> 119;
                        case 4 -> 62;
                        case 5 -> 73;
                        default -> 97;
                    })));
                    ++n3;
                    n4 = n4;
                } while (n4 > n3);
            }
            return new String(cArray2).intern();
        }
    }

    public static class ChainedSelector
    implements MessageAttributeSelector {
        private Collection<MessageAttributeSelector> a;
        private static final String[] b;

        public ChainedSelector(@NotNull Collection<MessageAttributeSelector> collection) {
            if (collection == null) {
                ChainedSelector.a(0);
            }
            this.a = collection;
        }

        @Override
        public ExpandVariables.Selector.Selection select(Message message, String string, Syntax.SyntaxErrorHandler syntaxErrorHandler, boolean bl2) {
            for (MessageAttributeSelector messageAttributeSelector : this.a) {
                if (messageAttributeSelector == null) continue;
                ExpandVariables.Selector.Selection selection = messageAttributeSelector.select(message, string, syntaxErrorHandler, bl2);
                try {
                    if (selection == null) continue;
                    return selection;
                }
                catch (IllegalArgumentException illegalArgumentException) {
                    throw ChainedSelector.a(illegalArgumentException);
                }
            }
            return null;
        }

        private static /* synthetic */ void a(int n2) {
            String[] stringArray = b;
            throw new IllegalArgumentException(String.format(stringArray[1], stringArray[2], stringArray[0], stringArray[3]));
        }

        private static IllegalArgumentException a(IllegalArgumentException illegalArgumentException) {
            return illegalArgumentException;
        }

        /*
         * Unable to fully structure code
         */
        static {
            block10: {
                block9: {
                    var5 = new String[4];
                    var3_1 = 0;
                    var2_2 = "\u0013Rpp~y\u0018\u0015^upa+\u001e\u0006Xopb!\u0000\u0019^dpd/\u001e\u0019\\\u007f3wa!\u0015Nn>u+?\u0015Qx<f!\u001eT~u>{ \t\u0014nx3w-\u0018\u001fO>1Oz*\u007f+\u0002\u0004\u001d{0`n,>Ri\u0011g\"\u0000PM|-s#\t\u0004Xo\u007f5k\u001fW\u001dr92k\u001f^\u0018n\u007f\u007f;\u001f\u0004\u001ds0fn\u000e\u0015\u001ds*~\"";
                    var4_3 = "\u0013Rpp~y\u0018\u0015^upa+\u001e\u0006Xopb!\u0000\u0019^dpd/\u001e\u0019\\\u007f3wa!\u0015Nn>u+?\u0015Qx<f!\u001eT~u>{ \t\u0014nx3w-\u0018\u001fO>1Oz*\u007f+\u0002\u0004\u001d{0`n,>Ri\u0011g\"\u0000PM|-s#\t\u0004Xo\u007f5k\u001fW\u001dr92k\u001f^\u0018n\u007f\u007f;\u001f\u0004\u001ds0fn\u000e\u0015\u001ds*~\"".length();
                    var1_4 = 65;
                    var0_5 = -1;
lbl7:
                    // 2 sources

                    while (true) {
                        v0 = 25;
                        v1 = ++var0_5;
                        v2 = var2_2.substring(v1, v1 + var1_4);
                        v3 = -1;
                        break block9;
                        break;
                    }
lbl13:
                    // 1 sources

                    while (true) {
                        var5[var3_1++] = ChainedSelector.a(v0, ChainedSelector.a(v2));
                        if ((var0_5 += var1_4) < var4_3) {
                            var1_4 = var2_2.charAt(var0_5);
                            ** continue;
                        }
                        var2_2 = "\nFo$k1\u0006\u000bP\u0006RJm(xn";
                        var4_3 = "\nFo$k1\u0006\u000bP\u0006RJm(xn".length();
                        var1_4 = 9;
                        var0_5 = -1;
lbl22:
                        // 2 sources

                        while (true) {
                            v0 = 7;
                            v4 = ++var0_5;
                            v2 = var2_2.substring(v4, v4 + var1_4);
                            v3 = 0;
                            break block9;
                            break;
                        }
                        break;
                    }
lbl28:
                    // 1 sources

                    while (true) {
                        var5[var3_1++] = ChainedSelector.a(v0, ChainedSelector.a(v2));
                        if ((var0_5 += var1_4) < var4_3) {
                            var1_4 = var2_2.charAt(var0_5);
                            ** continue;
                        }
                        break block10;
                        break;
                    }
                }
                switch (v3) {
                    default: {
                        ** continue;
                    }
                    ** case 0:
lbl39:
                    // 1 sources

                    ** continue;
                }
            }
            ChainedSelector.b = var5;
        }

        private static char[] a(String string) {
            char[] cArray = string.toCharArray();
            if (cArray.length < 2) {
                cArray = cArray;
                cArray[0] = (char)(cArray[0] ^ 0x75);
            }
            return cArray;
        }

        /*
         * Handled impossible loop by duplicating code
         * Enabled aggressive block sorting
         */
        private static String a(int n2, char[] cArray) {
            char[] cArray2;
            block11: {
                int n3;
                int n4;
                int n5;
                block10: {
                    n5 = n2;
                    cArray2 = cArray;
                    n4 = cArray.length;
                    n3 = 0;
                    if (!true) break block10;
                    n4 = n4;
                    if (n4 <= n3) break block11;
                }
                do {
                    n5 = n5;
                    cArray2 = cArray2;
                    int n6 = n3;
                    cArray2[n6] = (char)(cArray2[n6] ^ (n5 ^ (switch (n3 % 7) {
                        case 0 -> 105;
                        case 1 -> 36;
                        case 2 -> 4;
                        case 3 -> 70;
                        case 4 -> 11;
                        case 5 -> 87;
                        default -> 117;
                    })));
                    ++n3;
                    n4 = n4;
                } while (n4 > n3);
            }
            return new String(cArray2).intern();
        }
    }

    public static abstract class AbstractMessageAttributeSelector
    implements MessageAttributeSelector {
        protected ExpandVariables.Selector.Selection handleBadVariable(String string, Syntax.SyntaxErrorHandler syntaxErrorHandler, boolean bl2) {
            String string2 = syntaxErrorHandler.handleBadVariable(string);
            try {
                if (bl2) {
                    throw new IllegalArgumentException(string2);
                }
            }
            catch (IllegalArgumentException illegalArgumentException) {
                throw AbstractMessageAttributeSelector.a(illegalArgumentException);
            }
            return null;
        }

        private static IllegalArgumentException a(IllegalArgumentException illegalArgumentException) {
            return illegalArgumentException;
        }
    }

    static final class BufferStatus
    extends Enum<BufferStatus> {
        public static final /* enum */ BufferStatus UNINITIALIZED;
        public static final /* enum */ BufferStatus UNREAD;
        public static final /* enum */ BufferStatus BUFFERED;
        public static final /* enum */ BufferStatus GONE;
        private final String label;
        private static final /* synthetic */ BufferStatus[] $VALUES;

        public static BufferStatus[] values() {
            return (BufferStatus[])$VALUES.clone();
        }

        public static BufferStatus valueOf(String string) {
            return Enum.valueOf(BufferStatus.class, string);
        }

        private BufferStatus(String string2) {
            this.label = string2;
        }

        String getLabel() {
            return this.label;
        }

        private static /* synthetic */ BufferStatus[] $values() {
            return new BufferStatus[]{UNINITIALIZED, UNREAD, BUFFERED, GONE};
        }

        /*
         * Unable to fully structure code
         */
        static {
            block10: {
                block9: {
                    var0 = new String[8];
                    var4_1 = 0;
                    var3_2 = "$p^\u007f70H\"\r3kQw;6D'iQc7&\u0004\u0001Jv\\\u00063kJ|3&\u0004!jV|\r\u0013KqW\u001b\u0016d\u0007IqC\u0017\u0006";
                    var5_3 = "$p^\u007f70H\"\r3kQw;6D'iQc7&\u0004\u0001Jv\\\u00063kJ|3&\u0004!jV|\r\u0013KqW\u001b\u0016d\u0007IqC\u0017\u0006".length();
                    var2_4 = 8;
                    var1_5 = -1;
lbl7:
                    // 2 sources

                    while (true) {
                        v0 = 124;
                        v1 = ++var1_5;
                        v2 = var3_2.substring(v1, v1 + var2_4);
                        v3 = -1;
                        break block9;
                        break;
                    }
lbl13:
                    // 1 sources

                    while (true) {
                        var0[var4_1++] = BufferStatus.a(v0, BufferStatus.a(v2));
                        if ((var1_5 += var2_4) < var5_3) {
                            var2_4 = var3_2.charAt(var1_5);
                            ** continue;
                        }
                        var3_2 = "R\n+\u001dRG\bE\u0011?\u001eVQ)C";
                        var5_3 = "R\n+\u001dRG\bE\u0011?\u001eVQ)C".length();
                        var2_4 = 6;
                        var1_5 = -1;
lbl22:
                        // 2 sources

                        while (true) {
                            v0 = 61;
                            v4 = ++var1_5;
                            v2 = var3_2.substring(v4, v4 + var2_4);
                            v3 = 0;
                            break block9;
                            break;
                        }
                        break;
                    }
lbl28:
                    // 1 sources

                    while (true) {
                        var0[var4_1++] = BufferStatus.a(v0, BufferStatus.a(v2));
                        if ((var1_5 += var2_4) < var5_3) {
                            var2_4 = var3_2.charAt(var1_5);
                            ** continue;
                        }
                        break block10;
                        break;
                    }
                }
                switch (v3) {
                    default: {
                        ** continue;
                    }
                    ** case 0:
lbl39:
                    // 1 sources

                    ** continue;
                }
            }
            BufferStatus.UNINITIALIZED = new BufferStatus(var0[1]);
            BufferStatus.UNREAD = new BufferStatus(var0[3]);
            BufferStatus.BUFFERED = new BufferStatus(var0[0]);
            BufferStatus.GONE = new BufferStatus(var0[4]);
            BufferStatus.$VALUES = BufferStatus.$values();
        }

        private static char[] a(String string) {
            char[] cArray = string.toCharArray();
            if (cArray.length < 2) {
                cArray = cArray;
                cArray[0] = (char)(cArray[0] ^ 0x51);
            }
            return cArray;
        }

        /*
         * Handled impossible loop by duplicating code
         * Enabled aggressive block sorting
         */
        private static String a(int n2, char[] cArray) {
            char[] cArray2;
            block11: {
                int n3;
                int n4;
                int n5;
                block10: {
                    n5 = n2;
                    cArray2 = cArray;
                    n4 = cArray.length;
                    n3 = 0;
                    if (!true) break block10;
                    n4 = n4;
                    if (n4 <= n3) break block11;
                }
                do {
                    n5 = n5;
                    cArray2 = cArray2;
                    int n6 = n3;
                    cArray2[n6] = (char)(cArray2[n6] ^ (n5 ^ (switch (n3 % 7) {
                        case 0 -> 58;
                        case 1 -> 121;
                        case 2 -> 68;
                        case 3 -> 101;
                        case 4 -> 46;
                        case 5 -> 62;
                        default -> 81;
                    })));
                    ++n3;
                    n4 = n4;
                } while (n4 > n3);
            }
            return new String(cArray2).intern();
        }
    }
}

