/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.common.log.HybridDiagnosticContext
 *  com.l7tech.common.log.HybridDiagnosticContext$SavedDiagnosticContext
 *  com.l7tech.common.mime.ContentTypeHeader
 *  com.l7tech.common.mime.NoSuchPartException
 *  com.l7tech.common.mime.StashManager
 *  com.l7tech.gateway.common.LicenseException
 *  com.l7tech.identity.User
 *  com.l7tech.identity.UserBean
 *  com.l7tech.json.InvalidJsonException
 *  com.l7tech.json.JSONData
 *  com.l7tech.json.JSONFactory
 *  com.l7tech.json.JsonSchemaVersion
 *  com.l7tech.message.HttpRequestKnob
 *  com.l7tech.message.HttpRequestKnobAdapter
 *  com.l7tech.message.HttpResponseKnob
 *  com.l7tech.message.Message
 *  com.l7tech.policy.assertion.Assertion
 *  com.l7tech.policy.assertion.AssertionStatus
 *  com.l7tech.policy.assertion.PolicyAssertionException
 *  com.l7tech.policy.assertion.composite.CompositeAssertion
 *  com.l7tech.policy.wsp.WspReader
 *  com.l7tech.policy.wsp.WspReader$Visibility
 *  com.l7tech.security.token.OpaqueSecurityToken
 *  com.l7tech.security.token.SecurityToken
 *  com.l7tech.util.Charsets
 *  com.l7tech.util.ExceptionUtils
 *  com.l7tech.util.IOUtils
 *  com.l7tech.util.Pair
 *  com.l7tech.util.ResourceUtils
 *  org.jetbrains.annotations.Nullable
 */
package com.l7tech.server.service;

import com.l7tech.common.log.HybridDiagnosticContext;
import com.l7tech.common.mime.ContentTypeHeader;
import com.l7tech.common.mime.NoSuchPartException;
import com.l7tech.common.mime.StashManager;
import com.l7tech.gateway.common.LicenseException;
import com.l7tech.identity.User;
import com.l7tech.identity.UserBean;
import com.l7tech.json.InvalidJsonException;
import com.l7tech.json.JSONData;
import com.l7tech.json.JSONFactory;
import com.l7tech.json.JsonSchemaVersion;
import com.l7tech.message.HttpRequestKnob;
import com.l7tech.message.HttpRequestKnobAdapter;
import com.l7tech.message.HttpResponseKnob;
import com.l7tech.message.Message;
import com.l7tech.policy.assertion.Assertion;
import com.l7tech.policy.assertion.AssertionStatus;
import com.l7tech.policy.assertion.PolicyAssertionException;
import com.l7tech.policy.assertion.composite.CompositeAssertion;
import com.l7tech.policy.wsp.WspReader;
import com.l7tech.security.token.OpaqueSecurityToken;
import com.l7tech.security.token.SecurityToken;
import com.l7tech.server.StashManagerFactory;
import com.l7tech.server.identity.AuthenticationResult;
import com.l7tech.server.message.PolicyEnforcementContext;
import com.l7tech.server.message.PolicyEnforcementContextFactory;
import com.l7tech.server.policy.ServerPolicyException;
import com.l7tech.server.policy.ServerPolicyFactory;
import com.l7tech.server.policy.assertion.ServerAssertion;
import com.l7tech.server.service.MigrationBundleBootstrapService;
import com.l7tech.server.service.a;
import com.l7tech.server.service.d;
import com.l7tech.server.service.e;
import com.l7tech.server.service.f;
import com.l7tech.util.Charsets;
import com.l7tech.util.ExceptionUtils;
import com.l7tech.util.IOUtils;
import com.l7tech.util.Pair;
import com.l7tech.util.ResourceUtils;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.PipedInputStream;
import java.io.PipedOutputStream;
import java.nio.charset.StandardCharsets;
import java.nio.file.FileVisitOption;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.attribute.BasicFileAttributes;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.function.BiPredicate;
import java.util.function.Supplier;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.stream.Stream;
import org.jetbrains.annotations.Nullable;

public class GraphmanBundleProcessor {
    private static final Logger a;
    private static final byte[] 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 final ServerPolicyFactory j;
    private final WspReader k;
    private final StashManagerFactory l;
    private ExecutorService m;
    private boolean n;
    private boolean o;
    private File p;
    private String q;
    private d r;
    private String[] s;
    private static final String[] t;

    public GraphmanBundleProcessor(ServerPolicyFactory serverPolicyFactory, WspReader wspReader, StashManagerFactory stashManagerFactory) {
        this.j = serverPolicyFactory;
        this.k = wspReader;
        this.l = stashManagerFactory;
        this.n = true;
        this.o = false;
    }

    public void setBootstrapConfig(String string, String string2, boolean bl2, boolean bl3) {
        this.p = new File(string);
        this.q = string2;
        this.n = bl2;
        this.o = bl3;
    }

    /*
     * Loose catch block
     * Enabled force condition propagation
     * Lifted jumps to return sites
     */
    public void bootstrapBundles(UserBean userBean) throws MigrationBundleBootstrapService.BundleInstallFailedException {
        ServerAssertion<?> serverAssertion;
        block32: {
            block31: {
                block33: {
                    if (this.p == null) return;
                    if (!this.p.exists()) return;
                    break block33;
                    catch (Throwable throwable) {
                        throw GraphmanBundleProcessor.a(throwable);
                    }
                }
                try {
                    if (this.p.isDirectory()) break block31;
                    return;
                    catch (Throwable throwable) {
                        throw GraphmanBundleProcessor.a(throwable);
                    }
                }
                catch (Throwable throwable) {
                    throw GraphmanBundleProcessor.a(throwable);
                }
            }
            serverAssertion = null;
            serverAssertion = this.a();
            this.r = new d(this.p, this.b(serverAssertion));
            if (this.n) {
                Stream<Path> stream = Files.list(this.p.toPath()).sorted();
                try {
                    for (Path path2 : stream.toList()) {
                        this.a(serverAssertion, userBean, path2.toFile());
                    }
                }
                catch (Throwable throwable) {
                    if (stream == null) throw throwable;
                    try {
                        stream.close();
                        throw throwable;
                    }
                    catch (Throwable throwable2) {
                        throwable.addSuppressed(throwable2);
                    }
                    throw throwable;
                }
                try {
                    if (stream != null) {
                        stream.close();
                    }
                    break block32;
                }
                catch (Throwable throwable) {
                    throw GraphmanBundleProcessor.a(throwable);
                }
            }
            BiPredicate<Path, BasicFileAttributes> biPredicate = (path, basicFileAttributes) -> {
                boolean bl2;
                block5: {
                    block4: {
                        try {
                            try {
                                if (!basicFileAttributes.isRegularFile() || !path.toString().endsWith(t[13])) break block4;
                            }
                            catch (RuntimeException runtimeException) {
                                throw GraphmanBundleProcessor.a(runtimeException);
                            }
                            bl2 = true;
                            break block5;
                        }
                        catch (RuntimeException runtimeException) {
                            throw GraphmanBundleProcessor.a(runtimeException);
                        }
                    }
                    bl2 = false;
                }
                return bl2;
            };
            Stream<Path> stream = Files.find(this.p.toPath(), Integer.MAX_VALUE, biPredicate, new FileVisitOption[0]).sorted();
            try {
                for (Path path3 : stream.toList()) {
                    this.a(serverAssertion, userBean, path3.toFile());
                }
            }
            catch (Throwable throwable) {
                if (stream == null) throw throwable;
                try {
                    stream.close();
                    throw throwable;
                }
                catch (Throwable throwable3) {
                    throwable.addSuppressed(throwable3);
                }
                throw throwable;
            }
            try {
                if (stream != null) {
                    stream.close();
                }
            }
            catch (Throwable throwable) {
                throw GraphmanBundleProcessor.a(throwable);
            }
        }
        try {
            ResourceUtils.closeQuietly(serverAssertion);
            if (this.m == null) return;
            this.m.shutdown();
            return;
        }
        catch (Throwable throwable) {
            throw GraphmanBundleProcessor.a(throwable);
        }
        catch (LicenseException | PolicyAssertionException | IOException throwable) {
            try {
                throw new MigrationBundleBootstrapService.BundleInstallFailedException(t[26] + ExceptionUtils.getMessage((Throwable)throwable), throwable);
            }
            catch (Throwable throwable4) {
                try {
                    ResourceUtils.closeQuietly(serverAssertion);
                    if (this.m == null) throw throwable4;
                    this.m.shutdown();
                    throw throwable4;
                }
                catch (Throwable throwable5) {
                    throw GraphmanBundleProcessor.a(throwable5);
                }
            }
        }
    }

    private void a(ServerAssertion<?> serverAssertion, UserBean userBean, File file) throws MigrationBundleBootstrapService.BundleInstallFailedException {
        try {
            HashSet<e> hashSet = new HashSet<e>();
            if (file.isDirectory()) {
                for (Pair<File, Map<String, Object>> pair : this.b(file, hashSet)) {
                    this.a(serverAssertion, userBean, (File)pair.left, (Map)pair.right, hashSet);
                }
            } else {
                this.a(serverAssertion, userBean, file, this.a(file, hashSet), hashSet);
            }
        }
        catch (GraphmanBundleException graphmanBundleException) {
            block7: {
                try {
                    if (!this.o) break block7;
                    a.log(Level.WARNING, ExceptionUtils.getDebugException((Throwable)graphmanBundleException), () -> {
                        String[] stringArray = t;
                        return stringArray[54] + String.valueOf(file) + stringArray[1] + ExceptionUtils.getMessageWithCause((Throwable)graphmanBundleException);
                    });
                }
                catch (GraphmanBundleException graphmanBundleException2) {
                    throw GraphmanBundleProcessor.a(graphmanBundleException2);
                }
            }
            throw new MigrationBundleBootstrapService.FatalBundleInstallFailedException(t[31] + String.valueOf(file), graphmanBundleException);
        }
    }

    private void a(ServerAssertion<?> serverAssertion, UserBean userBean, File file, Map<String, Object> map, Set<e> set) throws MigrationBundleBootstrapService.BundleInstallFailedException {
        try {
            try {
                if (!map.isEmpty()) {
                    this.a(serverAssertion, userBean, map, set);
                }
            }
            catch (MigrationBundleBootstrapService.BundleInstallFailedException bundleInstallFailedException) {
                throw GraphmanBundleProcessor.a(bundleInstallFailedException);
            }
        }
        catch (GraphmanBundleException graphmanBundleException) {
            block8: {
                try {
                    if (!this.o) break block8;
                    a.log(Level.WARNING, ExceptionUtils.getDebugException((Throwable)graphmanBundleException), () -> {
                        String[] stringArray = t;
                        return stringArray[54] + String.valueOf(file) + stringArray[22] + ExceptionUtils.getMessageWithCause((Throwable)graphmanBundleException);
                    });
                }
                catch (GraphmanBundleException graphmanBundleException2) {
                    throw GraphmanBundleProcessor.a(graphmanBundleException2);
                }
            }
            throw new MigrationBundleBootstrapService.FatalBundleInstallFailedException(t[54] + String.valueOf(file), graphmanBundleException);
        }
    }

    /*
     * Loose catch block
     * Enabled force condition propagation
     * Lifted jumps to return sites
     */
    private void a(ServerAssertion<?> serverAssertion, UserBean userBean, Map<String, Object> map, Set<e> set) throws GraphmanBundleException, MigrationBundleBootstrapService.BundleInstallFailedException {
        HybridDiagnosticContext.SavedDiagnosticContext savedDiagnosticContext = HybridDiagnosticContext.save();
        try (PolicyEnforcementContext policyEnforcementContext = PolicyEnforcementContextFactory.createPolicyEnforcementContext(new Message(), new Message());){
            String string;
            block18: {
                String[] stringArray = t;
                policyEnforcementContext.setVariable(stringArray[9], this.q);
                policyEnforcementContext.setVariable(stringArray[43], this.a(serverAssertion, GraphmanBundleProcessor.b(map.get(stringArray[28]))));
                policyEnforcementContext.setVariable(stringArray[56], map);
                this.a(policyEnforcementContext.getRequest(), set);
                policyEnforcementContext.getRequest().attachHttpRequestKnob((HttpRequestKnob)new HttpRequestKnobAdapter());
                policyEnforcementContext.getResponse().attachHttpResponseKnob((HttpResponseKnob)new a(this));
                policyEnforcementContext.getDefaultAuthenticationContext().addAuthenticationResult(new AuthenticationResult((User)userBean, (SecurityToken)new OpaqueSecurityToken()));
                AssertionStatus assertionStatus = serverAssertion.checkRequest(policyEnforcementContext);
                int n2 = policyEnforcementContext.getResponse().getHttpResponseKnob().getStatus();
                string = new String(IOUtils.slurpStream((InputStream)policyEnforcementContext.getResponse().getMimeKnob().getEntireMessageBodyAsInputStream()), Charsets.UTF8);
                a.log(Level.INFO, () -> {
                    String string2 = string;
                    int n3 = n2;
                    String string3 = String.valueOf(assertionStatus);
                    String[] stringArray = t;
                    return stringArray[40] + string3 + stringArray[37] + n3 + stringArray[27] + string2;
                });
                if (!AssertionStatus.NONE.equals(assertionStatus)) throw new GraphmanBundleException(t[10] + String.valueOf(assertionStatus) + t[33] + n2);
                try {
                    if (n2 == 200) break block18;
                    throw new GraphmanBundleException(t[10] + String.valueOf(assertionStatus) + t[33] + n2);
                    catch (Throwable throwable) {
                        throw GraphmanBundleProcessor.a(throwable);
                    }
                }
                catch (Throwable throwable) {
                    throw GraphmanBundleProcessor.a(throwable);
                }
            }
            this.a(string);
            return;
        }
        catch (NoSuchPartException | PolicyAssertionException | IOException throwable) {
            String[] stringArray = t;
            throw new GraphmanBundleException(stringArray[18] + ExceptionUtils.getMessage((Throwable)throwable), throwable);
        }
        catch (RuntimeException runtimeException) {
            try {
                if (!(runtimeException.getCause() instanceof IOException)) throw runtimeException;
                throw new GraphmanBundleException(t[48] + ExceptionUtils.getMessage((Throwable)runtimeException), runtimeException);
            }
            catch (Throwable throwable) {
                throw GraphmanBundleProcessor.a(throwable);
            }
        }
        finally {
            HybridDiagnosticContext.restore((HybridDiagnosticContext.SavedDiagnosticContext)savedDiagnosticContext);
        }
    }

    /*
     * Loose catch block
     * Enabled force condition propagation
     * Lifted jumps to return sites
     */
    private void a(String string) throws GraphmanBundleException {
        try {
            Map<String, Object> map = GraphmanBundleProcessor.b(string);
            if (map.containsKey(t[8])) throw new GraphmanBundleException(t[35]);
            try {
                if (!this.a(GraphmanBundleProcessor.b(map.get(t[52])))) return;
                throw new GraphmanBundleException(t[35]);
                catch (InvalidJsonException invalidJsonException) {
                    throw GraphmanBundleProcessor.a(invalidJsonException);
                }
            }
            catch (InvalidJsonException invalidJsonException) {
                throw GraphmanBundleProcessor.a(invalidJsonException);
            }
        }
        catch (InvalidJsonException | ClassCastException | IllegalStateException throwable) {
            a.log(Level.INFO, throwable, () -> GraphmanBundleProcessor.lambda$assertResponse$4((Exception)throwable));
            throw new GraphmanBundleException(t[24]);
        }
    }

    private boolean a(Map<String, Object> map) {
        try {
            if (map == null) {
                return true;
            }
        }
        catch (RuntimeException runtimeException) {
            throw GraphmanBundleProcessor.a(runtimeException);
        }
        for (Map.Entry<String, Object> entry : map.entrySet()) {
            String[] stringArray;
            Map<String, Object> map2 = GraphmanBundleProcessor.a(entry.getValue());
            List<Object> list = GraphmanBundleProcessor.d(map2.get((stringArray = t)[30]));
            if (list == null) continue;
            for (Object object : list) {
                Map<String, Object> map3 = GraphmanBundleProcessor.a(object);
                try {
                    if (!t[59].equals(map3.get(t[17]))) continue;
                    return true;
                }
                catch (RuntimeException runtimeException) {
                    throw GraphmanBundleProcessor.a(runtimeException);
                }
            }
        }
        return false;
    }

    private ServerAssertion<?> a() throws IOException, LicenseException, ServerPolicyException {
        String string = t[0];
        Assertion assertion = this.k.parseStrictly(string, WspReader.Visibility.omitDisabled);
        return this.j.compilePolicy(assertion, false);
    }

    private Assertion a(ServerAssertion<?> serverAssertion) {
        return (Assertion)((CompositeAssertion)serverAssertion.getAssertion()).getChildren().get(0);
    }

    private String a(ServerAssertion<?> serverAssertion, Map<String, Object> map) throws MigrationBundleBootstrapService.BundleInstallFailedException {
        block13: {
            int n2;
            String[] stringArray;
            block15: {
                block14: {
                    if (this.s == null) {
                        try {
                            String[] stringArray2;
                            block12: {
                                Supplier supplier;
                                block11: {
                                    String[] stringArray3 = t;
                                    Supplier supplier2 = (Supplier)this.a(serverAssertion).meta().get(stringArray3[25]);
                                    Supplier supplier3 = (Supplier)this.a(serverAssertion).meta().get(stringArray3[36]);
                                    supplier = (Supplier)this.a(serverAssertion).meta().get(stringArray3[41]);
                                    try {
                                        GraphmanBundleProcessor graphmanBundleProcessor = this;
                                        if (supplier2 == null) break block11;
                                        String[] stringArray4 = new String[2];
                                        stringArray4[0] = (String)supplier2.get();
                                        stringArray2 = stringArray4;
                                        stringArray4[1] = (String)supplier3.get();
                                        break block12;
                                    }
                                    catch (RuntimeException runtimeException) {
                                        throw GraphmanBundleProcessor.a(runtimeException);
                                    }
                                }
                                String[] stringArray5 = new String[1];
                                stringArray2 = stringArray5;
                                stringArray5[0] = (String)supplier.get();
                            }
                            graphmanBundleProcessor.s = stringArray2;
                        }
                        catch (RuntimeException runtimeException) {
                            String[] stringArray6 = t;
                            throw new MigrationBundleBootstrapService.BundleInstallFailedException(stringArray6[14] + ExceptionUtils.getMessage((Throwable)runtimeException), runtimeException);
                        }
                    }
                    try {
                        try {
                            try {
                                if (map == null || !t[2].equals(map.get(t[7]))) break block13;
                            }
                            catch (RuntimeException runtimeException) {
                                throw GraphmanBundleProcessor.a(runtimeException);
                            }
                            stringArray = this.s;
                            if (this.s.length <= 1) break block14;
                        }
                        catch (RuntimeException runtimeException) {
                            throw GraphmanBundleProcessor.a(runtimeException);
                        }
                        n2 = 1;
                        break block15;
                    }
                    catch (RuntimeException runtimeException) {
                        throw GraphmanBundleProcessor.a(runtimeException);
                    }
                }
                n2 = 0;
            }
            return stringArray[n2];
        }
        return this.s[0];
    }

    private Set<String> b(ServerAssertion<?> serverAssertion) {
        return (Set)this.a(serverAssertion).meta().get(t[44]);
    }

    private ExecutorService b() {
        try {
            if (this.m == null) {
                this.m = Executors.newSingleThreadExecutor();
            }
        }
        catch (RuntimeException runtimeException) {
            throw GraphmanBundleProcessor.a(runtimeException);
        }
        return this.m;
    }

    private Map<String, Object> a(File file, Set<e> set) throws MigrationBundleBootstrapService.BundleInstallFailedException, GraphmanBundleException {
        Map<String, Object> map;
        try {
            if (!file.getName().endsWith(t[55])) {
                return new HashMap<String, Object>();
            }
        }
        catch (Throwable throwable) {
            throw GraphmanBundleProcessor.a(throwable);
        }
        String[] stringArray = t;
        a.log(Level.INFO, stringArray[11], file.getPath());
        FileInputStream fileInputStream = new FileInputStream(file);
        try {
            Map<String, Object> map2 = GraphmanBundleProcessor.a(fileInputStream);
            map2.forEach((string, object) -> {
                block6: {
                    block5: {
                        try {
                            if (!(object instanceof List)) break block5;
                            this.r.preprocess(file.toPath(), (String)string, GraphmanBundleProcessor.c(object), set);
                            break block6;
                        }
                        catch (RuntimeException runtimeException) {
                            throw GraphmanBundleProcessor.a(runtimeException);
                        }
                    }
                    try {
                        if (!string.equals(t[28])) {
                            a.log(Level.WARNING, t[60], new Object[]{file, string});
                        }
                    }
                    catch (RuntimeException runtimeException) {
                        throw GraphmanBundleProcessor.a(runtimeException);
                    }
                }
            });
            map = map2;
        }
        catch (Throwable throwable) {
            try {
                try {
                    ((InputStream)fileInputStream).close();
                }
                catch (Throwable throwable2) {
                    throwable.addSuppressed(throwable2);
                }
                throw throwable;
            }
            catch (IOException iOException) {
                stringArray = t;
                throw new MigrationBundleBootstrapService.BundleInstallFailedException(stringArray[46] + ExceptionUtils.getMessage((Throwable)iOException), iOException);
            }
            catch (InvalidJsonException | RuntimeException throwable3) {
                throw new GraphmanBundleException(t[20] + ExceptionUtils.getMessage((Throwable)throwable3), throwable3);
            }
        }
        ((InputStream)fileInputStream).close();
        return map;
    }

    /*
     * Enabled aggressive block sorting
     * Enabled unnecessary exception pruning
     * Enabled aggressive exception aggregation
     */
    private List<Pair<File, Map<String, Object>>> b(File file, Set<e> set) throws GraphmanBundleException, MigrationBundleBootstrapService.BundleInstallFailedException {
        BiPredicate<Path, BasicFileAttributes> biPredicate = (path, basicFileAttributes) -> {
            boolean bl2;
            block5: {
                block4: {
                    try {
                        try {
                            if (!basicFileAttributes.isRegularFile() || !path.toString().endsWith(t[55])) break block4;
                        }
                        catch (RuntimeException runtimeException) {
                            throw GraphmanBundleProcessor.a(runtimeException);
                        }
                        bl2 = true;
                        break block5;
                    }
                    catch (RuntimeException runtimeException) {
                        throw GraphmanBundleProcessor.a(runtimeException);
                    }
                }
                bl2 = false;
            }
            return bl2;
        };
        try {
            List<Pair<File, Map<String, Object>>> list;
            String[] stringArray;
            ArrayList<Pair<File, Map<String, Object>>> arrayList;
            Stream<Path> stream;
            block30: {
                List<Path> list2;
                block27: {
                    stream = Files.find(file.toPath(), Integer.MAX_VALUE, biPredicate, new FileVisitOption[0]).sorted();
                    list2 = stream.toList();
                    arrayList = new ArrayList<Pair<File, Map<String, Object>>>();
                    if (!list2.isEmpty()) break block27;
                    ArrayList<Pair<File, Map<String, Object>>> arrayList2 = arrayList;
                    try {
                        if (stream == null) return arrayList2;
                        stream.close();
                        return arrayList2;
                    }
                    catch (Throwable throwable) {
                        throw GraphmanBundleProcessor.a(throwable);
                    }
                }
                try {
                    stringArray = t;
                    a.log(Level.INFO, stringArray[34], file.getPath());
                    AtomicBoolean atomicBoolean = new AtomicBoolean(true);
                    HashMap<String, Map<String, Object>> hashMap = new HashMap<String, Map<String, Object>>();
                    String string = null;
                    for (Path path2 : list2) {
                        stringArray = t;
                        a.log(Level.INFO, stringArray[3], path2);
                        try (FileInputStream fileInputStream = new FileInputStream(path2.toFile());){
                            Map<String, Object> map;
                            block29: {
                                block28: {
                                    map = GraphmanBundleProcessor.a(fileInputStream);
                                    arrayList.add((Pair<File, Map<String, Object>>)Pair.pair((Object)path2.toFile(), map));
                                    String string3 = this.b(map);
                                    if (string == null) {
                                        string = string3;
                                    }
                                    try {
                                        if (string3.equals(string)) break block28;
                                        a.log(Level.INFO, t[23], path2);
                                        atomicBoolean.set(false);
                                        break block29;
                                    }
                                    catch (Throwable throwable) {
                                        throw GraphmanBundleProcessor.a(throwable);
                                    }
                                }
                                try {
                                    if (this.c(map)) {
                                        a.log(Level.INFO, t[32], path2);
                                        atomicBoolean.set(false);
                                    }
                                }
                                catch (Throwable throwable) {
                                    throw GraphmanBundleProcessor.a(throwable);
                                }
                            }
                            map.forEach((string2, object) -> {
                                block8: {
                                    block7: {
                                        try {
                                            try {
                                                if (!(object instanceof List)) break block7;
                                                this.r.preprocess(path2, (String)string2, GraphmanBundleProcessor.c(object), set);
                                                if (!atomicBoolean.get()) break block8;
                                            }
                                            catch (RuntimeException runtimeException) {
                                                throw GraphmanBundleProcessor.a(runtimeException);
                                            }
                                            GraphmanBundleProcessor.c(hashMap.computeIfAbsent((String)string2, string -> new ArrayList())).addAll(GraphmanBundleProcessor.c(object));
                                            break block8;
                                        }
                                        catch (RuntimeException runtimeException) {
                                            throw GraphmanBundleProcessor.a(runtimeException);
                                        }
                                    }
                                    try {
                                        if (!string2.equals(t[58])) {
                                            a.log(Level.WARNING, t[42], new Object[]{path2, string2});
                                        }
                                    }
                                    catch (RuntimeException runtimeException) {
                                        throw GraphmanBundleProcessor.a(runtimeException);
                                    }
                                }
                            });
                        }
                    }
                    if (!atomicBoolean.get()) break block30;
                    stringArray = t;
                    hashMap.put(stringArray[28], Map.of(stringArray[4], string));
                    list = List.of(Pair.pair((Object)file, hashMap));
                }
                catch (Throwable throwable) {
                    if (stream == null) throw throwable;
                    try {
                        stream.close();
                        throw throwable;
                    }
                    catch (Throwable throwable2) {
                        throwable.addSuppressed(throwable2);
                    }
                    throw throwable;
                }
                try {
                    if (stream == null) return list;
                    stream.close();
                    return list;
                }
                catch (Throwable throwable) {
                    throw GraphmanBundleProcessor.a(throwable);
                }
            }
            stringArray = t;
            a.log(Level.INFO, stringArray[53], file.getPath());
            list = arrayList;
            try {
                if (stream == null) return list;
                stream.close();
                return list;
            }
            catch (Throwable throwable) {
                throw GraphmanBundleProcessor.a(throwable);
            }
        }
        catch (IOException iOException) {
            String[] stringArray = t;
            throw new MigrationBundleBootstrapService.BundleInstallFailedException(stringArray[6] + ExceptionUtils.getMessage((Throwable)iOException), iOException);
        }
        catch (InvalidJsonException | RuntimeException throwable) {
            throw new GraphmanBundleException(t[21] + ExceptionUtils.getMessage((Throwable)throwable), throwable);
        }
    }

    private String b(Map<String, Object> map) {
        String string;
        block3: {
            Map<String, Object> map2;
            String[] stringArray;
            block2: {
                stringArray = t;
                map2 = GraphmanBundleProcessor.b(map.get(stringArray[28]));
                try {
                    if (map2 != null) break block2;
                    string = stringArray[29];
                    break block3;
                }
                catch (RuntimeException runtimeException) {
                    throw GraphmanBundleProcessor.a(runtimeException);
                }
            }
            stringArray = t;
            string = GraphmanBundleProcessor.e(map2.getOrDefault(stringArray[4], stringArray[38]));
        }
        return string;
    }

    private boolean c(Map<String, Object> map) {
        boolean bl2;
        block5: {
            block4: {
                String[] stringArray = t;
                Map<String, Object> map2 = GraphmanBundleProcessor.b(map.get(stringArray[28]));
                try {
                    try {
                        if (map2 == null || map2.get(stringArray[45]) == null) break block4;
                    }
                    catch (RuntimeException runtimeException) {
                        throw GraphmanBundleProcessor.a(runtimeException);
                    }
                    bl2 = true;
                    break block5;
                }
                catch (RuntimeException runtimeException) {
                    throw GraphmanBundleProcessor.a(runtimeException);
                }
            }
            bl2 = false;
        }
        return bl2;
    }

    private void a(Message message, Set<e> set) throws IOException {
        try {
            if (set.isEmpty()) {
                return;
            }
        }
        catch (IOException iOException) {
            throw GraphmanBundleProcessor.a(iOException);
        }
        String[] stringArray = t;
        String string = stringArray[19] + System.currentTimeMillis();
        String string2 = stringArray[47] + string;
        ContentTypeHeader contentTypeHeader = ContentTypeHeader.parseValue((String)(stringArray[50] + string));
        PipedOutputStream pipedOutputStream = new PipedOutputStream();
        StashManager stashManager = this.l.createStashManager();
        f f2 = new f(pipedOutputStream);
        this.b().execute(() -> f2.write(set, string2));
        message.initialize(stashManager, contentTypeHeader, (InputStream)new PipedInputStream(pipedOutputStream));
    }

    private static Map<String, Object> b(String string) throws InvalidJsonException {
        JSONData jSONData = JSONFactory.INSTANCE.newJsonData(string, JsonSchemaVersion.DRAFT_V4);
        return GraphmanBundleProcessor.a(jSONData.getJsonObject());
    }

    private static Map<String, Object> a(InputStream inputStream) throws IOException, InvalidJsonException {
        return GraphmanBundleProcessor.b(new String(IOUtils.slurpStream((InputStream)inputStream), StandardCharsets.UTF_8));
    }

    private static Map<String, Object> a(Object object) {
        try {
            if (!(object instanceof Map)) {
                throw new IllegalStateException(t[39]);
            }
        }
        catch (RuntimeException runtimeException) {
            throw GraphmanBundleProcessor.a(runtimeException);
        }
        return (Map)object;
    }

    @Nullable
    private static Map<String, Object> b(Object object) {
        try {
            if (object == null) {
                return null;
            }
        }
        catch (RuntimeException runtimeException) {
            throw GraphmanBundleProcessor.a(runtimeException);
        }
        return GraphmanBundleProcessor.a(object);
    }

    private static List<Object> c(Object object) {
        try {
            if (!(object instanceof List)) {
                throw new IllegalStateException(t[5]);
            }
        }
        catch (RuntimeException runtimeException) {
            throw GraphmanBundleProcessor.a(runtimeException);
        }
        return (List)object;
    }

    @Nullable
    private static List<Object> d(Object object) {
        try {
            if (object == null) {
                return null;
            }
        }
        catch (RuntimeException runtimeException) {
            throw GraphmanBundleProcessor.a(runtimeException);
        }
        return GraphmanBundleProcessor.c(object);
    }

    private static String e(Object object) {
        try {
            if (!(object instanceof String)) {
                throw new IllegalStateException(t[49]);
            }
        }
        catch (RuntimeException runtimeException) {
            throw GraphmanBundleProcessor.a(runtimeException);
        }
        return (String)object;
    }

    private static /* synthetic */ String lambda$assertResponse$4(Exception exception) {
        return t[15] + ExceptionUtils.getMessage((Throwable)exception);
    }

    /*
     * Unable to fully structure code
     */
    static {
        block10: {
            block9: {
                var5 = new String[61];
                var3_1 = 0;
                var2_2 = "^#\u001fEb\u0018\u0011\u0007n\u0014AaVZ@-I\u0018,\u0018\u0002\f\u007f\bLgV\u0000_>2|H\u0015_@#Y\"2O\u0014\u0012&7GbQ\u0004\u001b<\u001fEbV\u0014XPPX3\u001a\u000f\u0016h\u0017\u0012!\u0017\u0010\u0015kIDoA\u0002\u0010+\u0013MmPI\u0001s\n\u0007yKH\u0012s\u000bAmAEBd\nD`K]\u0015o\u0017\u0015,P\u0013\u0016l]\u0007!K\u0004\ny\nI}\u0016\u001f\u000fp\u0014GoHI\rn\u0000\u0007yKHP,W\u001a!\tUMl\bDg[\u001e@\"m\b.\u0018G^k\u0014X4y\u000b\u000e<\u0010[~\u00022\u0011}\u0000M3\u001a5\u0007m\u0012A|]\u0003@\"m\b.\u0018GB<G\b2tP\u0012& Iz]\u0010\u0003e ZoH\u000f3PY\".\u0018GB<G\b.\u0018GB<[d9H]'r\u0004xoK\u0014Bo\u0013ZgV\u00004}\u000b]k\u0005EFg\u0002FmH\u0006\u0011o\u001a\n!\u0006mB<G\b.\u0018GB<G\b.\u0004+Ul]y{]\u0015\u001b<\u0014\\|Q\t\u0005J\u0006D{]Z@8\u001cO|Y\u0017\nm\u000by{]\u0015\u001baE\u000702GB<G\b.\u0018GB<G\b2tP\u0012&1I|Q\u0006\u0000p\u0002[.K\u0013\u0010u\tOXY\u000b\u0017yZ\n*C\u0000\u0010}\u0017@\u007fT1\u0003n\u0014U,\u0017Yh<G\b.\u0018GB<[\u0007B\u000f\u0017X[\u0006\\kO\u0006\u001b[\u0015I~P6.\"m\b.\u0018G^3\u0010[~\u0002&\u000epY\"2\u0017\u0010\u0011l]xaT\u000e\u0001eY\"\u0002N<\u0006&Y+mZ}-\u0012n\bKkK\u0014\u000br\u0000\bIj&2T*i@\u0018\u0005\u0017r\u0003Dk\u0018\u0001\u000bp\u0002\bu\b\u001aBz\bZ.U\u0002\u0010{\u0002\r\u0006y\u0001I{T\u0013#\u007f\u0013AaV +q\u0017ZaH\u0002\u0010<\bJd]\u0004\u0016<\u0013Q~]]Br\b\\.YG\u000eu\u0014\\\u001c$}\u000eDk\\G\u0016sGNgV\u0003Bh\u000fM.Z\u0012\fx\u000bM}\u0002G\r\u0006y\u0001I{T\u0013#\u007f\u0013AaV\u0006\u0007n\u0015G|K\u0007\u0007r\u0004XoK\u0014\u001c%N&xFu&,<\u0001IgT\u0002\u0006<\u0010AzPG\u0010y\u0014]bLZ\"\u0000s\b\\}L\u0015\u0003l\u0017A`_G%N&xFu&,<\u0005]`\\\u000b\u0007&GS>E\u0011\u0011y\u0015^kJ*\rx\u0012Dk~\u000e\u000ey\u0014\u0005Lv\u0014G`27r\u0006Jb]G\u0016sGZkY\u0003B[5i^p*#RGE{L\u0006\u0016u\bF.J\u0002\u0013i\u0002[z\u0018\u0003\u0007h\u0006AbK]B8$}\u000eDk\\G\u0016sGXoJ\u0014\u0007<\u0013@k\u0018 0]7`Cy)Bq\u0012\\oL\u000e\rrGZkK\u0017\rr\u0014M.Y\u0014BV4g@\u0002G\b\u000f}\u0017XgV\u0000\u0011\u0006\u0011h\u0006\\{K'%N&xFu&,<\u0005GaL\u0014\u0016n\u0006X~Q\t\u0005<\u0015M\u007fM\u0002\u0011hGNoQ\u000b\u0007x]\b\bO1J\u0005#\u0015JO\u001c$}\u000eDk\\G\u0016sGXoJ\u0014\u0007<\u0013@k\u0018\u0005\u0017r\u0003Dk\u0002G/$}\u000eDk\\G\u0016sGKaU\u0005\u000br\u0002\bzP\u0002B~\u0012FjT\u0002\u0011<\u0001ZaUG\u0016t\u0002\bhW\u000b\u0006y\u0015\u0012.\u0002N<k%N&xFu&,<\u0005]`\\\u000b\u0007<\u0001Ab]G\u0019,\u001a\bmY\t\fs\u0013\bl]G\u000fy\u0015Ok\\G\u0015u\u0013@.L\u000f\u0007<\b\\f]\u0015\u00110GL{]G\u0016sG\\f]G\u0006u\u0001NkJ\u0002\f\u007f\u0002\bgVG\u0016t\u0002\blM\t\u0006p\u0002\bb]\u0011\u0007pGImL\u000e\rrF'n\u0015G|\u0018\u0002\f\u007f\b]`L\u0002\u0010y\u0003\byP\u000e\u000eyGA`K\u0017\u0007\u007f\u0013A`_G\u0016t\u0002\bIj&2T*i@\u0018\u0005\rs\u0013[zJ\u0006\u0012l\u000eFi\u0018\u0015\u0007o\u0017G`K\u0002\"\u000br\u0014\\oT\u000b i\tLb]*\u0017h\u0006\\gW\t3i\u0002Zwk\u0012\u0012l\u000bAkJ*7r\u0006Jb]G\u0016sGX|]\u0017\u0003n\u0002\u0007gV\u0011\rw\u0002\bIj&2T*i@\u0018\u0017\rp\u000eKw\u0002G\u0007B~\bLw\u0002m\n\u0012n\bXkJ\u0013\u000by\u0014\r,Y0wAj87L#iZ}\u000e\u0006y\u0013IgT\u0002\u0006O\u0013IzM\u00148'n\u0015G|\u0018\u0002\f\u007f\b]`L\u0002\u0010y\u0003\byP\u000e\u000eyGX|W\u0004\u0007o\u0014A`_G\u0016t\u0002\bIj&2T*i@\u0018\u0005\u0017r\u0003Dk\u0002GU%N&xFu&,<\u0005]`\\\u000b\u0007<\u0001Ab]G\u0019,\u001a\bmY\t\fs\u0013\bl]G\u000fy\u0015Ok\\G\u0015u\u0013@.L\u000f\u0007<\b\\f]\u0015\u00110GL{]G\u0016sG\\f]G\u0017o\u0002\ba^G\u000f}\u0017XgV\u0000\u0011\fBt\u0013\\~k\u0013\u0003h\u0012[3.\u0000s\b\\}L\u0015\u0003l\u0017A`_G%N&xFu&,<\u0005]`\\\u000b\u0007<\u0001ZaUG\u0004s\u000bLkJ]BgWU8'n\u0015G|KG\u0006y\u0013MmL\u0002\u0006<\u0010AzPG\u0016t\u0002\bIj&2T*i@\u0018\u0005\rs\u0013[zJ\u0006\u0012l\u000eFi\u0018\u0015\u0007o\u0017G`K\u0002!\u0006y\u000bMz]%\u0017r\u0003Dku\u0012\u0016}\u0013AaV6\u0017y\u0015Q]M\u0017\u0012p\u000eM|\fBt\u0013\\~k\u0013\u0003h\u0012[3\r,Y0wAj87L#iZ}\u001f+q\u0017ZaH\u0002\u0010<\bJd]\u0004\u0016<\u0013Q~]]Br\b\\.YG\u000f}\u0017(/i\u0013IzQ\b\f<\u0015M}H\b\fo\u0002\bhJ\b\u000f< zOh//])\u0012.J\u0002\u0011i\u000b\\3\u001b\u0000i\tLb]*\u0017h\u0006\\gW\t3i\u0002Zwk\u0012\u0012l\u000bAkJ<\u0017r\u0002P~]\u0004\u0016y\u0003\bkV\u0013\u0010eG\u0000`W\u0013B}\t\boJ\u0015\u0003eN\bhW\u0012\fxGA`\u0018\u0013\nyGJ{V\u0003\u000ey]\bu\b\u001aMgVU\f\u0005n\u0006XfI\u000b3i\u0002Zw\u0014\u0011i\u0017XaJ\u0013\u0007x\"FzQ\u0013\u001bH\u001eXkK\b\u000f}\u0017XgV\u0000\u0011\u001c$}\u000eDk\\G\u0016sGNgV\u0003Bh\u000fM.Z\u0012\fx\u000bM}\u0002G\u0002O1'%N&xFu&,<\u0005GaL\u0014\u0016n\u0006X~Q\t\u0005<\u0015M\u007fM\u0002\u0011hGNoQ\u000b\u0007x]\b\"+q\u0017ZaH\u0002\u0010<\bJd]\u0004\u0016<\u0013Q~]]Br\b\\.YG\u0011h\u0015A`_\u001e\u000fi\u000b\\gH\u0006\u0010hHNaJ\nOx\u0006\\o\u0003G\u0000s\u0012FjY\u0015\u001b!\u0006&Y+mZ}\u0004\u0006}\u0013Ij\u0011s\nM.W\u0001Bh\u000fM.\u007f5#L/eOvG\u0000i\tLb]\u0014Bz\u0015Gc\u0018\u0001\rp\u0003M|\u0018\u001cRaGKoV\t\rhGJk\u0018\u0004\rq\u0005A`]\u0003N<\u0004G`L\u000e\fi\u000eFi\u0018\u0013\r<\u0005GaL\u0014\u0016n\u0006X.L\u000f\u0007qGA`\\\u000e\u0014u\u0003]oT\u000b\u001b8'n\u0015G|\u0018\u0002\f\u007f\b]`L\u0002\u0010y\u0003\byP\u000e\u000eyGX|W\u0004\u0007o\u0014A`_G\u0016t\u0002\bIj&2T*i@\u0018\u0005\u0017r\u0003Dk\u0002G\u0005Lv\u0014G`\u000b\u0005n\u0006XfI\u000b4}\u0015[\u0002o\u0016\n\u0012n\bXkJ\u0013\u000by\u0014";
                var4_3 = "^#\u001fEb\u0018\u0011\u0007n\u0014AaVZ@-I\u0018,\u0018\u0002\f\u007f\bLgV\u0000_>2|H\u0015_@#Y\"2O\u0014\u0012&7GbQ\u0004\u001b<\u001fEbV\u0014XPPX3\u001a\u000f\u0016h\u0017\u0012!\u0017\u0010\u0015kIDoA\u0002\u0010+\u0013MmPI\u0001s\n\u0007yKH\u0012s\u000bAmAEBd\nD`K]\u0015o\u0017\u0015,P\u0013\u0016l]\u0007!K\u0004\ny\nI}\u0016\u001f\u000fp\u0014GoHI\rn\u0000\u0007yKHP,W\u001a!\tUMl\bDg[\u001e@\"m\b.\u0018G^k\u0014X4y\u000b\u000e<\u0010[~\u00022\u0011}\u0000M3\u001a5\u0007m\u0012A|]\u0003@\"m\b.\u0018GB<G\b2tP\u0012& Iz]\u0010\u0003e ZoH\u000f3PY\".\u0018GB<G\b.\u0018GB<[d9H]'r\u0004xoK\u0014Bo\u0013ZgV\u00004}\u000b]k\u0005EFg\u0002FmH\u0006\u0011o\u001a\n!\u0006mB<G\b.\u0018GB<G\b.\u0004+Ul]y{]\u0015\u001b<\u0014\\|Q\t\u0005J\u0006D{]Z@8\u001cO|Y\u0017\nm\u000by{]\u0015\u001baE\u000702GB<G\b.\u0018GB<G\b2tP\u0012&1I|Q\u0006\u0000p\u0002[.K\u0013\u0010u\tOXY\u000b\u0017yZ\n*C\u0000\u0010}\u0017@\u007fT1\u0003n\u0014U,\u0017Yh<G\b.\u0018GB<[\u0007B\u000f\u0017X[\u0006\\kO\u0006\u001b[\u0015I~P6.\"m\b.\u0018G^3\u0010[~\u0002&\u000epY\"2\u0017\u0010\u0011l]xaT\u000e\u0001eY\"\u0002N<\u0006&Y+mZ}-\u0012n\bKkK\u0014\u000br\u0000\bIj&2T*i@\u0018\u0005\u0017r\u0003Dk\u0018\u0001\u000bp\u0002\bu\b\u001aBz\bZ.U\u0002\u0010{\u0002\r\u0006y\u0001I{T\u0013#\u007f\u0013AaV +q\u0017ZaH\u0002\u0010<\bJd]\u0004\u0016<\u0013Q~]]Br\b\\.YG\u000eu\u0014\\\u001c$}\u000eDk\\G\u0016sGNgV\u0003Bh\u000fM.Z\u0012\fx\u000bM}\u0002G\r\u0006y\u0001I{T\u0013#\u007f\u0013AaV\u0006\u0007n\u0015G|K\u0007\u0007r\u0004XoK\u0014\u001c%N&xFu&,<\u0001IgT\u0002\u0006<\u0010AzPG\u0010y\u0014]bLZ\"\u0000s\b\\}L\u0015\u0003l\u0017A`_G%N&xFu&,<\u0005]`\\\u000b\u0007&GS>E\u0011\u0011y\u0015^kJ*\rx\u0012Dk~\u000e\u000ey\u0014\u0005Lv\u0014G`27r\u0006Jb]G\u0016sGZkY\u0003B[5i^p*#RGE{L\u0006\u0016u\bF.J\u0002\u0013i\u0002[z\u0018\u0003\u0007h\u0006AbK]B8$}\u000eDk\\G\u0016sGXoJ\u0014\u0007<\u0013@k\u0018 0]7`Cy)Bq\u0012\\oL\u000e\rrGZkK\u0017\rr\u0014M.Y\u0014BV4g@\u0002G\b\u000f}\u0017XgV\u0000\u0011\u0006\u0011h\u0006\\{K'%N&xFu&,<\u0005GaL\u0014\u0016n\u0006X~Q\t\u0005<\u0015M\u007fM\u0002\u0011hGNoQ\u000b\u0007x]\b\bO1J\u0005#\u0015JO\u001c$}\u000eDk\\G\u0016sGXoJ\u0014\u0007<\u0013@k\u0018\u0005\u0017r\u0003Dk\u0002G/$}\u000eDk\\G\u0016sGKaU\u0005\u000br\u0002\bzP\u0002B~\u0012FjT\u0002\u0011<\u0001ZaUG\u0016t\u0002\bhW\u000b\u0006y\u0015\u0012.\u0002N<k%N&xFu&,<\u0005]`\\\u000b\u0007<\u0001Ab]G\u0019,\u001a\bmY\t\fs\u0013\bl]G\u000fy\u0015Ok\\G\u0015u\u0013@.L\u000f\u0007<\b\\f]\u0015\u00110GL{]G\u0016sG\\f]G\u0006u\u0001NkJ\u0002\f\u007f\u0002\bgVG\u0016t\u0002\blM\t\u0006p\u0002\bb]\u0011\u0007pGImL\u000e\rrF'n\u0015G|\u0018\u0002\f\u007f\b]`L\u0002\u0010y\u0003\byP\u000e\u000eyGA`K\u0017\u0007\u007f\u0013A`_G\u0016t\u0002\bIj&2T*i@\u0018\u0005\rs\u0013[zJ\u0006\u0012l\u000eFi\u0018\u0015\u0007o\u0017G`K\u0002\"\u000br\u0014\\oT\u000b i\tLb]*\u0017h\u0006\\gW\t3i\u0002Zwk\u0012\u0012l\u000bAkJ*7r\u0006Jb]G\u0016sGX|]\u0017\u0003n\u0002\u0007gV\u0011\rw\u0002\bIj&2T*i@\u0018\u0017\rp\u000eKw\u0002G\u0007B~\bLw\u0002m\n\u0012n\bXkJ\u0013\u000by\u0014\r,Y0wAj87L#iZ}\u000e\u0006y\u0013IgT\u0002\u0006O\u0013IzM\u00148'n\u0015G|\u0018\u0002\f\u007f\b]`L\u0002\u0010y\u0003\byP\u000e\u000eyGX|W\u0004\u0007o\u0014A`_G\u0016t\u0002\bIj&2T*i@\u0018\u0005\u0017r\u0003Dk\u0002GU%N&xFu&,<\u0005]`\\\u000b\u0007<\u0001Ab]G\u0019,\u001a\bmY\t\fs\u0013\bl]G\u000fy\u0015Ok\\G\u0015u\u0013@.L\u000f\u0007<\b\\f]\u0015\u00110GL{]G\u0016sG\\f]G\u0017o\u0002\ba^G\u000f}\u0017XgV\u0000\u0011\fBt\u0013\\~k\u0013\u0003h\u0012[3.\u0000s\b\\}L\u0015\u0003l\u0017A`_G%N&xFu&,<\u0005]`\\\u000b\u0007<\u0001ZaUG\u0004s\u000bLkJ]BgWU8'n\u0015G|KG\u0006y\u0013MmL\u0002\u0006<\u0010AzPG\u0016t\u0002\bIj&2T*i@\u0018\u0005\rs\u0013[zJ\u0006\u0012l\u000eFi\u0018\u0015\u0007o\u0017G`K\u0002!\u0006y\u000bMz]%\u0017r\u0003Dku\u0012\u0016}\u0013AaV6\u0017y\u0015Q]M\u0017\u0012p\u000eM|\fBt\u0013\\~k\u0013\u0003h\u0012[3\r,Y0wAj87L#iZ}\u001f+q\u0017ZaH\u0002\u0010<\bJd]\u0004\u0016<\u0013Q~]]Br\b\\.YG\u000f}\u0017(/i\u0013IzQ\b\f<\u0015M}H\b\fo\u0002\bhJ\b\u000f< zOh//])\u0012.J\u0002\u0011i\u000b\\3\u001b\u0000i\tLb]*\u0017h\u0006\\gW\t3i\u0002Zwk\u0012\u0012l\u000bAkJ<\u0017r\u0002P~]\u0004\u0016y\u0003\bkV\u0013\u0010eG\u0000`W\u0013B}\t\boJ\u0015\u0003eN\bhW\u0012\fxGA`\u0018\u0013\nyGJ{V\u0003\u000ey]\bu\b\u001aMgVU\f\u0005n\u0006XfI\u000b3i\u0002Zw\u0014\u0011i\u0017XaJ\u0013\u0007x\"FzQ\u0013\u001bH\u001eXkK\b\u000f}\u0017XgV\u0000\u0011\u001c$}\u000eDk\\G\u0016sGNgV\u0003Bh\u000fM.Z\u0012\fx\u000bM}\u0002G\u0002O1'%N&xFu&,<\u0005GaL\u0014\u0016n\u0006X~Q\t\u0005<\u0015M\u007fM\u0002\u0011hGNoQ\u000b\u0007x]\b\"+q\u0017ZaH\u0002\u0010<\bJd]\u0004\u0016<\u0013Q~]]Br\b\\.YG\u0011h\u0015A`_\u001e\u000fi\u000b\\gH\u0006\u0010hHNaJ\nOx\u0006\\o\u0003G\u0000s\u0012FjY\u0015\u001b!\u0006&Y+mZ}\u0004\u0006}\u0013Ij\u0011s\nM.W\u0001Bh\u000fM.\u007f5#L/eOvG\u0000i\tLb]\u0014Bz\u0015Gc\u0018\u0001\rp\u0003M|\u0018\u001cRaGKoV\t\rhGJk\u0018\u0004\rq\u0005A`]\u0003N<\u0004G`L\u000e\fi\u000eFi\u0018\u0013\r<\u0005GaL\u0014\u0016n\u0006X.L\u000f\u0007qGA`\\\u000e\u0014u\u0003]oT\u000b\u001b8'n\u0015G|\u0018\u0002\f\u007f\b]`L\u0002\u0010y\u0003\byP\u000e\u000eyGX|W\u0004\u0007o\u0014A`_G\u0016t\u0002\bIj&2T*i@\u0018\u0005\u0017r\u0003Dk\u0002G\u0005Lv\u0014G`\u000b\u0005n\u0006XfI\u000b4}\u0015[\u0002o\u0016\n\u0012n\bXkJ\u0013\u000by\u0014".length();
                var1_4 = 445;
                var0_5 = -1;
lbl7:
                // 2 sources

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

                while (true) {
                    var5[var3_1++] = GraphmanBundleProcessor.a(v0, GraphmanBundleProcessor.c(v2));
                    if ((var0_5 += var1_4) < var4_3) {
                        var1_4 = var2_2.charAt(var0_5);
                        ** continue;
                    }
                    var2_2 = "4]&tO<\u0004a\u0011CmN\u0017\u0005j\u0010\u001bxE\u0000\u0003vT\u0013sD\u0000Qn\u001a\u001b|Y\u0006\u0010v]\u001b{D\u0001\u001fkTRs\u000b\u0000\u0019jTYhE\u0010\u001djN\u001bf\u001b\t^tEF";
                    var4_3 = "4]&tO<\u0004a\u0011CmN\u0017\u0005j\u0010\u001bxE\u0000\u0003vT\u0013sD\u0000Qn\u001a\u001b|Y\u0006\u0010v]\u001b{D\u0001\u001fkTRs\u000b\u0000\u0019jTYhE\u0010\u001djN\u001bf\u001b\t^tEF".length();
                    var1_4 = 5;
                    var0_5 = -1;
lbl22:
                    // 2 sources

                    while (true) {
                        v0 = 107;
                        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++] = GraphmanBundleProcessor.a(v0, GraphmanBundleProcessor.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;
            }
        }
        GraphmanBundleProcessor.t = var5;
        GraphmanBundleProcessor.e = GraphmanBundleProcessor.t[28];
        GraphmanBundleProcessor.g = GraphmanBundleProcessor.t[4];
        GraphmanBundleProcessor.h = GraphmanBundleProcessor.t[38];
        GraphmanBundleProcessor.i = GraphmanBundleProcessor.t[51];
        GraphmanBundleProcessor.f = GraphmanBundleProcessor.t[16];
        GraphmanBundleProcessor.c = GraphmanBundleProcessor.t[55];
        GraphmanBundleProcessor.d = GraphmanBundleProcessor.t[12];
        GraphmanBundleProcessor.a = Logger.getLogger(GraphmanBundleProcessor.class.getName());
        GraphmanBundleProcessor.b = GraphmanBundleProcessor.t[57].getBytes(StandardCharsets.UTF_8);
    }

    private static Throwable a(Throwable throwable) {
        return throwable;
    }

    private static char[] c(String string) {
        char[] cArray = string.toCharArray();
        if (cArray.length < 2) {
            cArray = cArray;
            cArray[0] = (char)(cArray[0] ^ 0x1F);
        }
        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 -> 26;
                    case 1 -> 100;
                    case 2 -> 31;
                    case 3 -> 80;
                    case 4 -> 118;
                    case 5 -> 64;
                    default -> 31;
                })));
                ++n3;
                n4 = n4;
            } while (n4 > n3);
        }
        return new String(cArray2).intern();
    }

    static class GraphmanBundleException
    extends Exception {
        static final long serialVersionUID = -1895841617838199883L;

        GraphmanBundleException(String string) {
            super(string);
        }

        GraphmanBundleException(String string, Throwable throwable) {
            super(string, throwable);
        }
    }
}

