/*
 * Decompiled with CFR 0.152.
 */
package com.l7tech.server.util;

public interface SchemaUpdater {
    public void ensureCurrentSchema() throws SchemaException;

    public static class SchemaUpgradeException
    extends SchemaException {
        static final long serialVersionUID = 2779307414617453485L;

        public SchemaUpgradeException(String string, Throwable throwable) {
            super(string, throwable);
        }
    }

    public static class SchemaVersionException
    extends SchemaException {
        static final long serialVersionUID = 2752350607003920139L;
        private static final String[] a;

        public SchemaVersionException(int n2, int n3) {
            String[] stringArray = a;
            super(stringArray[0] + n2 + stringArray[1] + n3);
        }

        /*
         * Enabled aggressive block sorting
         */
        static {
            String[] stringArray = new String[2];
            int n2 = 0;
            String string = "\t\fi!uA'(Tj'~P/-To!dF+#\u001a9\u0014`T{1b\u0015$#\u0001w 6C'>\u0007p+x\u0015";
            int n3 = "\t\fi!uA'(Tj'~P/-To!dF+#\u001a9\u0014`T{1b\u0015$#\u0001w 6C'>\u0007p+x\u0015".length();
            int n4 = 24;
            int n5 = -1;
            while (true) {
                int n6 = ++n5;
                stringArray[n2++] = SchemaVersionException.a(40, SchemaVersionException.a(string.substring(n6, n6 + n4)));
                if ((n5 += n4) >= n3) {
                    a = 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] ^ 0x6A);
            }
            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 -> 100;
                        case 1 -> 92;
                        case 2 -> 49;
                        case 3 -> 108;
                        case 4 -> 62;
                        case 5 -> 29;
                        default -> 106;
                    })));
                    ++n3;
                    n4 = n4;
                } while (n4 > n3);
            }
            return new String(cArray2).intern();
        }
    }

    public static class SchemaException
    extends RuntimeException {
        static final long serialVersionUID = -3636300294858804624L;

        public SchemaException(String string) {
            super(string);
        }

        public SchemaException(String string, Throwable throwable) {
            super(string, throwable);
        }
    }
}

