package com.l7tech.server.util;

import com.l7tech.gateway.common.audit.BootMessages;
import com.l7tech.gateway.common.audit.Messages.M;
import com.l7tech.gateway.common.cluster.ClusterProperty;
import com.l7tech.objectmodel.FindException;
import com.l7tech.server.audit.AuditContextUtils;
import com.l7tech.server.audit.Auditor;
import com.l7tech.server.cluster.ClusterPropertyManager;
import com.l7tech.server.event.system.Started;
import com.l7tech.server.event.system.Starting;
import com.l7tech.server.event.system.SystemEvent;
import com.l7tech.server.upgrade.FatalUpgradeException;
import com.l7tech.server.upgrade.NonfatalUpgradeException;
import com.l7tech.server.upgrade.UpgradeTask;
import com.l7tech.util.CollectionUtils;
import com.l7tech.util.ExceptionUtils;
import com.l7tech.util.CollectionUtils.MapBuilder;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.hibernate.TransactionException;
import org.hibernate.exception.LockAcquisitionException;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.context.ApplicationEvent;
import org.springframework.context.support.ApplicationObjectSupport;
import org.springframework.orm.hibernate5.HibernateOptimisticLockingFailureException;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.support.TransactionTemplate;

public class GatewaySanityChecker extends ApplicationObjectSupport implements InitializingBean {
   private static final Logger a;
   private static final String b;
   private static final Map<Class<? extends SystemEvent>, Set<String>> c;
   private final ClusterPropertyManager d;
   private final PlatformTransactionManager e;
   private Auditor f;
   private List<ClusterProperty> g;
   private UpgradeTask[] h;
   private static final String[] j;

   public GatewaySanityChecker(PlatformTransactionManager var1, ClusterPropertyManager var2) {
      this.e = var1;
      this.d = var2;
      if (var2 == null) {
         throw new NullPointerException(j[23]);
      }
   }

   public void afterPropertiesSet() throws Exception {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 000: aload 0
      // 001: new com/l7tech/server/audit/Auditor
      // 004: dup
      // 005: aload 0
      // 006: aload 0
      // 007: invokevirtual com/l7tech/server/util/GatewaySanityChecker.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 00a: getstatic com/l7tech/server/util/GatewaySanityChecker.a Ljava/util/logging/Logger;
      // 00d: invokespecial com/l7tech/server/audit/Auditor.<init> (Ljava/lang/Object;Lorg/springframework/context/ApplicationContext;Ljava/util/logging/Logger;)V
      // 010: putfield com/l7tech/server/util/GatewaySanityChecker.f Lcom/l7tech/server/audit/Auditor;
      // 013: aload 0
      // 014: invokevirtual com/l7tech/server/util/GatewaySanityChecker.getApplicationContext ()Lorg/springframework/context/ApplicationContext;
      // 017: astore 1
      // 018: aload 1
      // 019: getstatic com/l7tech/server/util/GatewaySanityChecker.j [Ljava/lang/String;
      // 01c: astore 15
      // 01e: aload 15
      // 020: bipush 14
      // 022: aaload
      // 023: ldc org/springframework/context/event/ApplicationEventMulticaster
      // 025: invokeinterface org/springframework/context/ApplicationContext.getBean (Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; 3
      // 02a: checkcast org/springframework/context/event/ApplicationEventMulticaster
      // 02d: astore 2
      // 02e: aload 2
      // 02f: new com/l7tech/server/util/n
      // 032: dup
      // 033: aload 0
      // 034: invokespecial com/l7tech/server/util/n.<init> (Lcom/l7tech/server/util/GatewaySanityChecker;)V
      // 037: invokeinterface org/springframework/context/event/ApplicationEventMulticaster.addApplicationListener (Lorg/springframework/context/ApplicationListener;)V 2
      // 03c: aload 0
      // 03d: getfield com/l7tech/server/util/GatewaySanityChecker.h [Lcom/l7tech/server/upgrade/UpgradeTask;
      // 040: ifnull 069
      // 043: aload 0
      // 044: getfield com/l7tech/server/util/GatewaySanityChecker.h [Lcom/l7tech/server/upgrade/UpgradeTask;
      // 047: astore 3
      // 048: aload 3
      // 049: arraylength
      // 04a: istore 4
      // 04c: bipush 0
      // 04d: istore 5
      // 04f: iload 5
      // 051: iload 4
      // 053: if_icmpge 069
      // 056: aload 3
      // 057: iload 5
      // 059: aaload
      // 05a: astore 6
      // 05c: aload 0
      // 05d: aload 6
      // 05f: aconst_null
      // 060: invokevirtual com/l7tech/server/util/GatewaySanityChecker.a (Lcom/l7tech/server/upgrade/UpgradeTask;Lcom/l7tech/gateway/common/cluster/ClusterProperty;)V
      // 063: iinc 5 1
      // 066: goto 04f
      // 069: aload 0
      // 06a: getfield com/l7tech/server/util/GatewaySanityChecker.d Lcom/l7tech/server/cluster/ClusterPropertyManager;
      // 06d: invokeinterface com/l7tech/server/cluster/ClusterPropertyManager.findAll ()Ljava/util/Collection; 1
      // 072: astore 3
      // 073: goto 082
      // 076: astore 4
      // 078: new java/lang/RuntimeException
      // 07b: dup
      // 07c: aload 4
      // 07e: invokespecial java/lang/RuntimeException.<init> (Ljava/lang/Throwable;)V
      // 081: athrow
      // 082: new java/util/HashMap
      // 085: dup
      // 086: invokespecial java/util/HashMap.<init> ()V
      // 089: astore 4
      // 08b: new java/util/ArrayList
      // 08e: dup
      // 08f: invokespecial java/util/ArrayList.<init> ()V
      // 092: astore 5
      // 094: new java/util/HashMap
      // 097: dup
      // 098: invokespecial java/util/HashMap.<init> ()V
      // 09b: astore 6
      // 09d: new java/util/ArrayList
      // 0a0: dup
      // 0a1: invokespecial java/util/ArrayList.<init> ()V
      // 0a4: astore 7
      // 0a6: aload 3
      // 0a7: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 0ac: astore 8
      // 0ae: aload 8
      // 0b0: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 0b5: ifeq 1d2
      // 0b8: aload 8
      // 0ba: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 0bf: checkcast com/l7tech/gateway/common/cluster/ClusterProperty
      // 0c2: astore 9
      // 0c4: aload 9
      // 0c6: invokevirtual com/l7tech/gateway/common/cluster/ClusterProperty.getName ()Ljava/lang/String;
      // 0c9: astore 10
      // 0cb: aload 10
      // 0cd: getstatic com/l7tech/server/util/GatewaySanityChecker.j [Ljava/lang/String;
      // 0d0: bipush 24
      // 0d2: aaload
      // 0d3: invokevirtual java/lang/String.startsWith (Ljava/lang/String;)Z
      // 0d6: ifeq 1cf
      // 0d9: aload 10
      // 0db: invokevirtual java/lang/String.length ()I
      // 0de: getstatic com/l7tech/server/util/GatewaySanityChecker.j [Ljava/lang/String;
      // 0e1: bipush 27
      // 0e3: aaload
      // 0e4: invokevirtual java/lang/String.length ()I
      // 0e7: if_icmple 1cf
      // 0ea: goto 0f1
      // 0ed: invokestatic com/l7tech/server/util/GatewaySanityChecker.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0f0: athrow
      // 0f1: aload 9
      // 0f3: invokevirtual com/l7tech/gateway/common/cluster/ClusterProperty.getValue ()Ljava/lang/String;
      // 0f6: astore 11
      // 0f8: aload 0
      // 0f9: aload 11
      // 0fb: invokevirtual com/l7tech/server/util/GatewaySanityChecker.a (Ljava/lang/String;)Z
      // 0fe: ifne 12d
      // 101: aload 0
      // 102: getfield com/l7tech/server/util/GatewaySanityChecker.f Lcom/l7tech/server/audit/Auditor;
      // 105: getstatic com/l7tech/gateway/common/audit/BootMessages.UPGRADE_TASK_IGNORED Lcom/l7tech/gateway/common/audit/Messages$M;
      // 108: bipush 1
      // 109: anewarray 248
      // 10c: dup
      // 10d: bipush 0
      // 10e: aload 10
      // 110: aload 11
      // 112: getstatic com/l7tech/server/util/GatewaySanityChecker.j [Ljava/lang/String;
      // 115: bipush 6
      // 117: aaload
      // 118: dup_x2
      // 119: pop
      // 11a: ldc "="
      // 11c: swap
      // 11d: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001\u0001" ]
      // 122: aastore
      // 123: invokevirtual com/l7tech/server/audit/Auditor.logAndAudit (Lcom/l7tech/gateway/common/audit/AuditDetailMessage;[Ljava/lang/String;)V
      // 126: goto 0ae
      // 129: invokestatic com/l7tech/server/util/GatewaySanityChecker.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 12c: athrow
      // 12d: aload 10
      // 12f: getstatic com/l7tech/server/util/GatewaySanityChecker.j [Ljava/lang/String;
      // 132: astore 15
      // 134: aload 15
      // 136: bipush 27
      // 138: aaload
      // 139: invokevirtual java/lang/String.length ()I
      // 13c: invokevirtual java/lang/String.substring (I)Ljava/lang/String;
      // 13f: invokestatic java/lang/Long.parseLong (Ljava/lang/String;)J
      // 142: lstore 12
      // 144: getstatic com/l7tech/server/util/GatewaySanityChecker.c Ljava/util/Map;
      // 147: aconst_null
      // 148: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 14d: checkcast java/util/Set
      // 150: aload 11
      // 152: invokeinterface java/util/Set.contains (Ljava/lang/Object;)Z 2
      // 157: ifeq 17d
      // 15a: aload 6
      // 15c: lload 12
      // 15e: invokestatic java/lang/Long.valueOf (J)Ljava/lang/Long;
      // 161: aload 9
      // 163: invokeinterface java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 3
      // 168: pop
      // 169: aload 7
      // 16b: lload 12
      // 16d: invokestatic java/lang/Long.valueOf (J)Ljava/lang/Long;
      // 170: invokeinterface java/util/List.add (Ljava/lang/Object;)Z 2
      // 175: pop
      // 176: goto 199
      // 179: invokestatic com/l7tech/server/util/GatewaySanityChecker.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 17c: athrow
      // 17d: aload 4
      // 17f: lload 12
      // 181: invokestatic java/lang/Long.valueOf (J)Ljava/lang/Long;
      // 184: aload 9
      // 186: invokeinterface java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 3
      // 18b: pop
      // 18c: aload 5
      // 18e: lload 12
      // 190: invokestatic java/lang/Long.valueOf (J)Ljava/lang/Long;
      // 193: invokeinterface java/util/List.add (Ljava/lang/Object;)Z 2
      // 198: pop
      // 199: goto 1cf
      // 19c: astore 14
      // 19e: aload 0
      // 19f: getfield com/l7tech/server/util/GatewaySanityChecker.f Lcom/l7tech/server/audit/Auditor;
      // 1a2: getstatic com/l7tech/gateway/common/audit/BootMessages.UPGRADE_TASK_IGNORED Lcom/l7tech/gateway/common/audit/Messages$M;
      // 1a5: bipush 1
      // 1a6: anewarray 248
      // 1a9: dup
      // 1aa: bipush 0
      // 1ab: aload 10
      // 1ad: aload 14
      // 1af: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 1b2: getstatic com/l7tech/server/util/GatewaySanityChecker.j [Ljava/lang/String;
      // 1b5: astore 15
      // 1b7: aload 15
      // 1b9: bipush 20
      // 1bb: aaload
      // 1bc: dup_x2
      // 1bd: pop
      // 1be: aload 15
      // 1c0: bipush 32
      // 1c2: aaload
      // 1c3: swap
      // 1c4: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001\u0001" ]
      // 1c9: aastore
      // 1ca: aload 14
      // 1cc: invokevirtual com/l7tech/server/audit/Auditor.logAndAudit (Lcom/l7tech/gateway/common/audit/AuditDetailMessage;[Ljava/lang/String;Ljava/lang/Throwable;)V
      // 1cf: goto 0ae
      // 1d2: aload 7
      // 1d4: invokeinterface java/util/List.isEmpty ()Z 1
      // 1d9: ifne 243
      // 1dc: aload 7
      // 1de: invokestatic java/util/Collections.sort (Ljava/util/List;)V
      // 1e1: aload 7
      // 1e3: invokeinterface java/util/List.iterator ()Ljava/util/Iterator; 1
      // 1e8: astore 8
      // 1ea: aload 8
      // 1ec: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 1f1: ifeq 243
      // 1f4: aload 8
      // 1f6: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 1fb: checkcast java/lang/Long
      // 1fe: astore 9
      // 200: aload 6
      // 202: aload 9
      // 204: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 209: checkcast com/l7tech/gateway/common/cluster/ClusterProperty
      // 20c: astore 10
      // 20e: aload 0
      // 20f: aload 10
      // 211: invokevirtual com/l7tech/server/util/GatewaySanityChecker.a (Lcom/l7tech/gateway/common/cluster/ClusterProperty;)V
      // 214: goto 240
      // 217: astore 11
      // 219: aload 0
      // 21a: getfield com/l7tech/server/util/GatewaySanityChecker.f Lcom/l7tech/server/audit/Auditor;
      // 21d: getstatic com/l7tech/gateway/common/audit/BootMessages.UPGRADE_TASK_FATAL Lcom/l7tech/gateway/common/audit/Messages$M;
      // 220: bipush 1
      // 221: anewarray 248
      // 224: dup
      // 225: bipush 0
      // 226: aload 11
      // 228: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 22b: getstatic com/l7tech/server/util/GatewaySanityChecker.j [Ljava/lang/String;
      // 22e: bipush 11
      // 230: aaload
      // 231: swap
      // 232: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 237: aastore
      // 238: aload 11
      // 23a: invokevirtual com/l7tech/server/audit/Auditor.logAndAudit (Lcom/l7tech/gateway/common/audit/AuditDetailMessage;[Ljava/lang/String;Ljava/lang/Throwable;)V
      // 23d: aload 11
      // 23f: athrow
      // 240: goto 1ea
      // 243: aload 5
      // 245: invokeinterface java/util/List.isEmpty ()Z 1
      // 24a: ifne 2bd
      // 24d: aload 5
      // 24f: invokestatic java/util/Collections.sort (Ljava/util/List;)V
      // 252: new java/util/ArrayList
      // 255: dup
      // 256: invokespecial java/util/ArrayList.<init> ()V
      // 259: astore 8
      // 25b: aload 5
      // 25d: invokeinterface java/util/List.iterator ()Ljava/util/Iterator; 1
      // 262: astore 9
      // 264: aload 9
      // 266: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 26b: ifeq 291
      // 26e: aload 9
      // 270: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 275: checkcast java/lang/Long
      // 278: astore 10
      // 27a: aload 8
      // 27c: aload 4
      // 27e: aload 10
      // 280: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 285: checkcast com/l7tech/gateway/common/cluster/ClusterProperty
      // 288: invokeinterface java/util/List.add (Ljava/lang/Object;)Z 2
      // 28d: pop
      // 28e: goto 264
      // 291: getstatic com/l7tech/server/util/GatewaySanityChecker.i Z
      // 294: ifne 2b4
      // 297: aload 8
      // 299: invokeinterface java/util/List.isEmpty ()Z 1
      // 29e: ifeq 2b4
      // 2a1: goto 2a8
      // 2a4: invokestatic com/l7tech/server/util/GatewaySanityChecker.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2a7: athrow
      // 2a8: new java/lang/AssertionError
      // 2ab: dup
      // 2ac: invokespecial java/lang/AssertionError.<init> ()V
      // 2af: athrow
      // 2b0: invokestatic com/l7tech/server/util/GatewaySanityChecker.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2b3: athrow
      // 2b4: aload 0
      // 2b5: aload 8
      // 2b7: putfield com/l7tech/server/util/GatewaySanityChecker.g Ljava/util/List;
      // 2ba: goto 2c4
      // 2bd: aload 0
      // 2be: invokestatic java/util/Collections.emptyList ()Ljava/util/List;
      // 2c1: putfield com/l7tech/server/util/GatewaySanityChecker.g Ljava/util/List;
      // 2c4: return
      // try (52 -> 56): 57 com/l7tech/objectmodel/FindException
      // try (147 -> 166): 166 com/l7tech/objectmodel/FindException
      // try (111 -> 135): 135 com/l7tech/objectmodel/FindException
      // try (92 -> 105): 106 com/l7tech/objectmodel/FindException
      // try (137 -> 179): 180 java/lang/NumberFormatException
      // try (227 -> 230): 231 com/l7tech/server/upgrade/FatalUpgradeException
      // try (279 -> 284): 285 com/l7tech/objectmodel/FindException
      // try (281 -> 291): 291 com/l7tech/objectmodel/FindException
   }

   public void setEarlyTasks(UpgradeTask[] var1) {
      this.h = var1;
   }

   private boolean a(String var1) {
      for (Set var3 : c.values()) {
         for (String var5 : var3) {
            try {
               if (var5.equals(var1)) {
                  return true;
               }
            } catch (NullPointerException var6) {
               throw a(var6);
            }
         }
      }

      return false;
   }

   private void a(ClusterProperty var1) throws FatalUpgradeException {
      String var2 = var1.getName();
      String var3 = var1.getValue();
      String[] var9 = j;
      a.info(var9[1] + var2 + "=" + var3);

      UpgradeTask var4;
      try {
         var4 = this.b(var3);
      } catch (Exception var10) {
         Auditor var10000 = this.f;
         M var10001 = BootMessages.UPGRADE_TASK_IGNORED;
         String[] var10002 = new String[1];
         String var6 = ExceptionUtils.getMessage(var10);
         String var7 = var3;
         String var8 = var2;
         var9 = j;
         var10002[0] = var9[43] + var8 + "=" + var7 + var9[42] + var6;
         var10000.logAndAudit(var10001, var10002, var10);
         return;
      }

      this.a(var4, var1);
      a.info(j[18] + var2);
   }

   private void a(UpgradeTask var1, ClusterProperty var2) throws FatalUpgradeException {
      NonfatalUpgradeException[] var3 = new NonfatalUpgradeException[]{null};
      FatalUpgradeException[] var4 = new FatalUpgradeException[]{null};
      boolean var5 = AuditContextUtils.isSystem();
      AuditContextUtils.setSystem(true);

      label108: {
         try {
            new TransactionTemplate(this.e).execute(new ac(this, var2, var1, var3, var4));
            break label108;
         } catch (TransactionException var21) {
            try {
               if (var3[0] != null || var4[0] != null) {
                  break label108;
               }
            } catch (TransactionException var19) {
               throw a(var19);
            }

            Auditor var28 = this.f;
            M var30 = BootMessages.UPGRADE_TASK_NONFATAL;
            String[] var32 = new String[1];
            String var10005 = ExceptionUtils.getMessage(var21);
            String[] var26 = j;
            var32[0] = var26[3] + var10005;
            var28.logAndAudit(var30, var32, var21);
            return;
         } catch (HibernateOptimisticLockingFailureException | LockAcquisitionException var22) {
            try {
               ClusterProperty var7 = (ClusterProperty)this.d.findByPrimaryKey(var2.getGoid());
               if (var7 != null) {
                  Auditor var27 = this.f;
                  M var29 = BootMessages.UPGRADE_TASK_FATAL;
                  String[] var31 = new String[1];
                  String[] var25 = j;
                  var31[0] = var25[29];
                  var27.logAndAudit(var29, var31);
                  throw new FatalUpgradeException(var25[31]);
               }

               String[] var24 = j;
               a.log(Level.INFO, var24[9]);
            } catch (FindException var20) {
               Auditor var10000 = this.f;
               M var10001 = BootMessages.UPGRADE_TASK_FATAL;
               String[] var10002 = new String[1];
               String[] var9 = j;
               var10002[0] = var9[30];
               var10000.logAndAudit(var10001, var10002, var22);
               throw new FatalUpgradeException(var9[4], var22);
            }
         } finally {
            AuditContextUtils.setSystem(var5);
         }

         return;
      }

      try {
         if (var3[0] != null) {
            this.f.logAndAudit(BootMessages.UPGRADE_TASK_NONFATAL, new String[]{ExceptionUtils.getMessage(var3[0])}, var3[0]);
            return;
         }
      } catch (TransactionException var18) {
         throw a(var18);
      }

      try {
         if (var4[0] != null) {
            this.f.logAndAudit(BootMessages.UPGRADE_TASK_FATAL, new String[]{ExceptionUtils.getMessage(var4[0])}, var4[0]);
            throw new FatalUpgradeException(var4[0]);
         }
      } catch (TransactionException var17) {
         throw a(var17);
      }
   }

   private UpgradeTask b(String var1) throws ClassNotFoundException, IllegalAccessException, InstantiationException, ClassCastException {
      Class var2 = Class.forName(var1);
      return (UpgradeTask)var2.newInstance();
   }

   private void a(ApplicationEvent param1) {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 00: aload 1
      // 01: instanceof com/l7tech/server/event/system/SystemEvent
      // 04: ifeq 91
      // 07: aload 1
      // 08: checkcast com/l7tech/server/event/system/SystemEvent
      // 0b: astore 2
      // 0c: getstatic com/l7tech/server/util/GatewaySanityChecker.c Ljava/util/Map;
      // 0f: aload 2
      // 10: invokevirtual java/lang/Object.getClass ()Ljava/lang/Class;
      // 13: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 18: checkcast java/util/Set
      // 1b: astore 3
      // 1c: aload 3
      // 1d: ifnull 30
      // 20: aload 3
      // 21: invokeinterface java/util/Set.isEmpty ()Z 1
      // 26: ifeq 35
      // 29: goto 30
      // 2c: invokestatic com/l7tech/server/util/GatewaySanityChecker.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 2f: athrow
      // 30: return
      // 31: invokestatic com/l7tech/server/util/GatewaySanityChecker.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 34: athrow
      // 35: aload 0
      // 36: getfield com/l7tech/server/util/GatewaySanityChecker.g Ljava/util/List;
      // 39: invokeinterface java/util/List.iterator ()Ljava/util/Iterator; 1
      // 3e: astore 4
      // 40: aload 4
      // 42: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 47: ifeq 91
      // 4a: aload 4
      // 4c: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 51: checkcast com/l7tech/gateway/common/cluster/ClusterProperty
      // 54: astore 5
      // 56: aload 3
      // 57: aload 5
      // 59: invokevirtual com/l7tech/gateway/common/cluster/ClusterProperty.getValue ()Ljava/lang/String;
      // 5c: invokeinterface java/util/Set.contains (Ljava/lang/Object;)Z 2
      // 61: ifeq 8e
      // 64: aload 0
      // 65: aload 5
      // 67: invokevirtual com/l7tech/server/util/GatewaySanityChecker.a (Lcom/l7tech/gateway/common/cluster/ClusterProperty;)V
      // 6a: goto 8e
      // 6d: invokestatic com/l7tech/server/util/GatewaySanityChecker.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 70: athrow
      // 71: astore 6
      // 73: new java/lang/IllegalStateException
      // 76: dup
      // 77: aload 6
      // 79: invokestatic com/l7tech/util/ExceptionUtils.getMessage (Ljava/lang/Throwable;)Ljava/lang/String;
      // 7c: getstatic com/l7tech/server/util/GatewaySanityChecker.j [Ljava/lang/String;
      // 7f: bipush 44
      // 81: aaload
      // 82: swap
      // 83: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 88: aload 6
      // 8a: invokespecial java/lang/IllegalStateException.<init> (Ljava/lang/String;Ljava/lang/Throwable;)V
      // 8d: athrow
      // 8e: goto 40
      // 91: return
      // try (14 -> 21): 21 com/l7tech/server/upgrade/FatalUpgradeException
      // try (12 -> 17): 18 com/l7tech/server/upgrade/FatalUpgradeException
      // try (39 -> 42): 45 com/l7tech/server/upgrade/FatalUpgradeException
      // try (34 -> 43): 43 java/lang/NullPointerException
   }

   static {
      String[] var5 = new String[48];
      int var3 = 0;
      String var2 = "\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LIz\u00140\u001b/\u001em-E6\u001bpM_\u00166\u0001rFE'FD\u0001lO^(E\u0001ThI_\"\u001bDB\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00150\u001b(\u001d\u007f>H\u0010\u0017txC%H\u0007\rUFO%T\u0000\u0011o|C\u000eT\r\u0010o(1\u001ayP\\,B\u0010\u0011x\bJ(H\b\u0001nM\f-T\u0016\u001drO\f<Q\u0003\u0006}LIiU\u0005\u0007w\u0012\fs1\u001a}J@,\u0001\u0010\u001b<ZY'\u0001\u0011\u0004{ZM-DD\u0000}[GiN\nTh@E:\u0001\n\u001bxM\u0000i@\n\u0010<KC<M\u0000TrGXiB\f\u0011\u007fC\f GD\u001dh\bD(RD\u0016yMBiB\u000b\u0019lDI=D\u0000To]O*D\u0017\u0007z]@%XD\u001br\bM'N\u0010\u001cyZ\f'N\u0000\u00112?\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00130\u001b(\u001bm-E-\u001au\\E(M4\u001bpAO0w\u0001\u0006oAC'R&\u0011\u001anMO&F\n\u001dfMHiT\u0014\u0013nIH,\u0001\u0010\u0015oC\f*M\u0005\u0007o\bB(L\u0001N<=\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u0013\u0010\u001b)\u001by9E\u0005\u0000ykC$L\u0011\u001au\\U\u001aB\f\u0011qI_2\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00100\u001b)\u001ay9E\u0005\u0000yzC%D\u0017:7\u001fuX\\ O\u0003TiXK;@\u0000\u0011<\\M:JD\\}D^,@\u0000\r<KC$Q\b\u0011hMHiN\nT}FC=I\u0001\u0006<FC-DMZ6\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00130\u001b(\u001ba F\u0016\u0015hM|&M\r\u0017uM_\u00157\u0000}ZX<QD\u0000}[GiG\u0005\u001dpMHs\u00016\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00100\u001b)\u001ao(O\u000b\u001auKM%H\u001e\u0011Xf_7\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LIp\u0013TDHG\u0015z\u0011T'sDY=H\u000b\u001aWAX:\u001b\u0005\u0004lDE*@\u0010\u001dsFi?D\n\u0000Q]@=H\u0007\u0015o\\I;3\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u0017Q s\u001d\u001c\u001cQ\u0000\u0015hM~&M\u0001\u00072\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00110\u001b+\u0019y9E\u0005\u0000yzC%D\u00173\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00100\u001b$\u0018e-s\u0001\u0012yZI'B\u0001\u0007\u0018'\u001bqX@,U\u0001\u0010<]\\.S\u0005\u0010y\bX(R\u000fN<8\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u0017Q s\u001d\u001c\u001cQ\u0003\u0006}LI\u0002D\u001d\u0007hG^,R2\r\u001ajI@ ED\u001bnLE'@\bTuF\f<Q\u0003\u0006}LIgU\u0005\u0007w\bO%T\u0017\u0000yZ\f9S\u000b\u0004yZX0\u001bDB\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u0010\u0010\u001b$\u0018y9E\u0005\u0000yoM=D\u0013\u0015eeM'@\u0003\u0011qMB=v\u0017\u0010pC\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LIz\u0017Q s\u001b\u001b\bE\u0000'}E\\%D)\u0011o[M.D4\u0011nEE:R\r\u001br[$'\u0018i[X,SD$nG\\,S\u0010\r<eM'@\u0003\u0011n\bE:\u0001\u0016\u0011m]E;D\u0000\r\u0011\u0004{ZM-DJ\u0000}[GgC\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI\u007f\u0010\u0010\u001b*\u0019\u0019\u001cQ\u0000\u0015hMk(U\u0001\u0003}Qa(O\u0005\u0013yEI'U3\u0007xD<\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00130\u001b)\u001by9E\u0005\u0000ybA:q\u0016\u001bjAH,S0\rlM\r\u0011\u0004{ZM-DJ\u0000}[GgB\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u0011\u0010\u001b+\u0019y9E\u0005\u0000yoM=D\u0013\u0015eeM'@\u0003\u0011qMB=v\u0017\u0010p_1\u001a}J@,\u0001\u0010\u001b<ZY'\u0001\u0011\u0004{ZM-DD\u0000}[GiN\nTh@E:\u0001\n\u001bxM\u0000i@\n\u0010<AXiV\u0005\u0007<FC=\u0001\u0017\u0001\u007fKI:R\u0002\u0001pDUiB\u000b\u0019lDI=D\u0000TsF\f(O\u000b\u0000tM^iO\u000b\u0010y\u0006b!\u001a\u007fGY'U\u0001\u0006yL\f(OD\u0001rMT9D\u0007\u0000yL\f,Y\u0007\u0011l\\E&OD\u0003tA@,\u0001\u0007\u001cyKG O\u0003TuN\f(O\u000b\u0000tM^iO\u000b\u0010y\bD(RD\u0017sE\\%D\u0010\u0011x\bX!H\u0017TiXK;@\u0000\u0011<\\M:J_1\u001a}J@,\u0001\u0010\u001b<ZY'\u0001\u0011\u0004{ZM-DD\u0000}[GiN\nTh@E:\u0001\n\u001bxM\u0000i@\n\u0010<AXiV\u0005\u0007<FC=\u0001\u0017\u0001\u007fKI:R\u0002\u0001pDUiB\u000b\u0019lDI=D\u0000TsF\f(O\u000b\u0000tM^iO\u000b\u0010y\u0006\u0002^T;\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00100\u001b$\u0018e-q\u0016\u001bjAH,S6\u0011zM^,O\u0007\u0011o8\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00140\u001b(\u001em-E4\u0015o[[&S\u00001dXE;X6\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LIq\u0010TFHG\u0014{\u0011T!lLM=D6\u001bpM_2\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00130\u001b)\u001by9E\u0005\u0000yzC%D\u00173\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u0012U s\u001d\u0018\u001cQ\u0000\u0015hM~&M\u0001\u0007D\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI\u007f\u00130\u001b+\u0018o(O\u000b\u001auKM%H\u001e\u0011ZMH\u001cR\u0001\u0006O]N#D\u0007\u0000Xf_;\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00130\u001b(\u001bm-E4\u001bpAO0q\u0001\u0006qA_:H\u000b\u001ao;\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00100\u001b)\u001am-E'\u0018i[X,S4\u0006sXI;U\r\u0011o1\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00100\u001b$\u0018\u007f O\u000f7sFJ F\u0002^T$1\u001a}J@,\u0001\u0010\u001b<AB:U\u0005\u001ahAM=DD\u0001lO^(E\u0001ThI_\"\u001bD\u001d#\u0015hM[(XD\u0007}FE=XD\u0017tMO\"\u0001\u0002\u0015uDI-\u001bD2\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00100\u001b$\u0018y9E\u0005\u0000yzC%D\u0017";
      int var4 = "\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LIz\u00140\u001b/\u001em-E6\u001bpM_\u00166\u0001rFE'FD\u0001lO^(E\u0001ThI_\"\u001bDB\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00150\u001b(\u001d\u007f>H\u0010\u0017txC%H\u0007\rUFO%T\u0000\u0011o|C\u000eT\r\u0010o(1\u001ayP\\,B\u0010\u0011x\bJ(H\b\u0001nM\f-T\u0016\u001drO\f<Q\u0003\u0006}LIiU\u0005\u0007w\u0012\fs1\u001a}J@,\u0001\u0010\u001b<ZY'\u0001\u0011\u0004{ZM-DD\u0000}[GiN\nTh@E:\u0001\n\u001bxM\u0000i@\n\u0010<KC<M\u0000TrGXiB\f\u0011\u007fC\f GD\u001dh\bD(RD\u0016yMBiB\u000b\u0019lDI=D\u0000To]O*D\u0017\u0007z]@%XD\u001br\bM'N\u0010\u001cyZ\f'N\u0000\u00112?\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00130\u001b(\u001bm-E-\u001au\\E(M4\u001bpAO0w\u0001\u0006oAC'R&\u0011\u001anMO&F\n\u001dfMHiT\u0014\u0013nIH,\u0001\u0010\u0015oC\f*M\u0005\u0007o\bB(L\u0001N<=\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u0013\u0010\u001b)\u001by9E\u0005\u0000ykC$L\u0011\u001au\\U\u001aB\f\u0011qI_2\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00100\u001b)\u001ay9E\u0005\u0000yzC%D\u0017:7\u001fuX\\ O\u0003TiXK;@\u0000\u0011<\\M:JD\\}D^,@\u0000\r<KC$Q\b\u0011hMHiN\nT}FC=I\u0001\u0006<FC-DMZ6\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00130\u001b(\u001ba F\u0016\u0015hM|&M\r\u0017uM_\u00157\u0000}ZX<QD\u0000}[GiG\u0005\u001dpMHs\u00016\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00100\u001b)\u001ao(O\u000b\u001auKM%H\u001e\u0011Xf_7\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LIp\u0013TDHG\u0015z\u0011T'sDY=H\u000b\u001aWAX:\u001b\u0005\u0004lDE*@\u0010\u001dsFi?D\n\u0000Q]@=H\u0007\u0015o\\I;3\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u0017Q s\u001d\u001c\u001cQ\u0000\u0015hM~&M\u0001\u00072\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00110\u001b+\u0019y9E\u0005\u0000yzC%D\u00173\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00100\u001b$\u0018e-s\u0001\u0012yZI'B\u0001\u0007\u0018'\u001bqX@,U\u0001\u0010<]\\.S\u0005\u0010y\bX(R\u000fN<8\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u0017Q s\u001d\u001c\u001cQ\u0003\u0006}LI\u0002D\u001d\u0007hG^,R2\r\u001ajI@ ED\u001bnLE'@\bTuF\f<Q\u0003\u0006}LIgU\u0005\u0007w\bO%T\u0017\u0000yZ\f9S\u000b\u0004yZX0\u001bDB\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u0010\u0010\u001b$\u0018y9E\u0005\u0000yoM=D\u0013\u0015eeM'@\u0003\u0011qMB=v\u0017\u0010pC\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LIz\u0017Q s\u001b\u001b\bE\u0000'}E\\%D)\u0011o[M.D4\u0011nEE:R\r\u001br[$'\u0018i[X,SD$nG\\,S\u0010\r<eM'@\u0003\u0011n\bE:\u0001\u0016\u0011m]E;D\u0000\r\u0011\u0004{ZM-DJ\u0000}[GgC\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI\u007f\u0010\u0010\u001b*\u0019\u0019\u001cQ\u0000\u0015hMk(U\u0001\u0003}Qa(O\u0005\u0013yEI'U3\u0007xD<\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00130\u001b)\u001by9E\u0005\u0000ybA:q\u0016\u001bjAH,S0\rlM\r\u0011\u0004{ZM-DJ\u0000}[GgB\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u0011\u0010\u001b+\u0019y9E\u0005\u0000yoM=D\u0013\u0015eeM'@\u0003\u0011qMB=v\u0017\u0010p_1\u001a}J@,\u0001\u0010\u001b<ZY'\u0001\u0011\u0004{ZM-DD\u0000}[GiN\nTh@E:\u0001\n\u001bxM\u0000i@\n\u0010<AXiV\u0005\u0007<FC=\u0001\u0017\u0001\u007fKI:R\u0002\u0001pDUiB\u000b\u0019lDI=D\u0000TsF\f(O\u000b\u0000tM^iO\u000b\u0010y\u0006b!\u001a\u007fGY'U\u0001\u0006yL\f(OD\u0001rMT9D\u0007\u0000yL\f,Y\u0007\u0011l\\E&OD\u0003tA@,\u0001\u0007\u001cyKG O\u0003TuN\f(O\u000b\u0000tM^iO\u000b\u0010y\bD(RD\u0017sE\\%D\u0010\u0011x\bX!H\u0017TiXK;@\u0000\u0011<\\M:J_1\u001a}J@,\u0001\u0010\u001b<ZY'\u0001\u0011\u0004{ZM-DD\u0000}[GiN\nTh@E:\u0001\n\u001bxM\u0000i@\n\u0010<AXiV\u0005\u0007<FC=\u0001\u0017\u0001\u007fKI:R\u0002\u0001pDUiB\u000b\u0019lDI=D\u0000TsF\f(O\u000b\u0000tM^iO\u000b\u0010y\u0006\u0002^T;\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00100\u001b$\u0018e-q\u0016\u001bjAH,S6\u0011zM^,O\u0007\u0011o8\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00140\u001b(\u001em-E4\u0015o[[&S\u00001dXE;X6\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LIq\u0010TFHG\u0014{\u0011T!lLM=D6\u001bpM_2\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00130\u001b)\u001by9E\u0005\u0000yzC%D\u00173\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u0012U s\u001d\u0018\u001cQ\u0000\u0015hM~&M\u0001\u0007D\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI\u007f\u00130\u001b+\u0018o(O\u000b\u001auKM%H\u001e\u0011ZMH\u001cR\u0001\u0006O]N#D\u0007\u0000Xf_;\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI}\u00130\u001b(\u001bm-E4\u001bpAO0q\u0001\u0006qA_:H\u000b\u001ao;\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI|\u00100\u001b)\u001am-E'\u0018i[X,S4\u0006sXI;U\r\u0011o1\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00100\u001b$\u0018\u007f O\u000f7sFJ F\u0002^T$1\u001a}J@,\u0001\u0010\u001b<AB:U\u0005\u001ahAM=DD\u0001lO^(E\u0001ThI_\"\u001bD\u001d#\u0015hM[(XD\u0007}FE=XD\u0017tMO\"\u0001\u0002\u0015uDI-\u001bD2\u0007\u001bq\u0006@~U\u0001\u0017t\u0006_,S\u0012\u0011n\u0006Y9F\u0016\u0015xM\u0002\u001cQ\u0003\u0006}LI~\u00100\u001b$\u0018y9E\u0005\u0000yzC%D\u0017"
         .length();
      char var1 = '/';
      int var8 = -1;

      label39:
      while (true) {
         byte var10000 = 62;
         String var10001 = var2.substring(++var8, var8 + var1);
         byte var10002 = -1;

         while (true) {
            String var10 = a(var10000, c(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var10;
                  if ((var8 += var1) >= var4) {
                     j = var5;
                     b = j[27];

                     label26: {
                        try {
                           if (!GatewaySanityChecker.class.desiredAssertionStatus()) {
                              var11 = true;
                              break label26;
                           }
                        } catch (NullPointerException var6) {
                           throw a(var6);
                        }

                        var11 = false;
                     }

                     i = var11;
                     a = Logger.getLogger(GatewaySanityChecker.class.getName());
                     MapBuilder var12 = CollectionUtils.mapBuilder();
                     String[] var15 = new String[20];
                     String[] var9 = j;
                     var15[0] = var9[34];
                     var15[1] = var9[2];
                     var15[2] = var9[10];
                     var15[3] = var9[19];
                     var15[4] = var9[12];
                     var15[5] = var9[40];
                     var15[6] = var9[8];
                     var15[7] = var9[36];
                     var15[8] = var9[7];
                     var15[9] = var9[26];
                     var15[10] = var9[37];
                     var15[11] = var9[25];
                     var15[12] = var9[46];
                     var15[13] = var9[38];
                     var15[14] = var9[28];
                     var15[15] = var9[41];
                     var15[16] = var9[17];
                     var15[17] = var9[33];
                     var15[18] = var9[21];
                     var15[19] = var9[47];
                     c = var12.put(null, CollectionUtils.set(var15))
                        .put(Starting.class, CollectionUtils.set(new String[]{var9[22]}))
                        .put(Started.class, CollectionUtils.set(new String[]{var9[0], var9[39], var9[5], var9[15], var9[16], var9[45], var9[35], var9[13]}))
                        .unmodifiableMap();
                     return;
                  }

                  var1 = var2.charAt(var8);
                  break;
               default:
                  var5[var3++] = var10;
                  if ((var8 += var1) < var4) {
                     var1 = var2.charAt(var8);
                     continue label39;
                  }

                  var2 = "ui\u0003t2\f'se\u0006t-^!`c\u001ct+K4dg\n?pn#qt\u000f>;\rbBiXkkz7rT\u00016;HFui\u0003t2\f'se\u0006t-^!`c\u001ct+K4dg\n?pn#qt\u000f>;\u0003b&4\u001a5f\tc&S\u001e>?O6Qg\u001a?)Z*[g\u0000;9^>sh\u001a\r-_?";
                  var4 = "ui\u0003t2\f'se\u0006t-^!`c\u001ct+K4dg\n?pn#qt\u000f>;\rbBiXkkz7rT\u00016;HFui\u0003t2\f'se\u0006t-^!`c\u001ct+K4dg\n?pn#qt\u000f>;\u0003b&4\u001a5f\tc&S\u001e>?O6Qg\u001a?)Z*[g\u0000;9^>sh\u001a\r-_?"
                     .length();
                  var1 = '0';
                  var8 = -1;
            }

            var10000 = 76;
            var10001 = var2.substring(++var8, var8 + var1);
            var10002 = 0;
         }
      }
   }

   private static Exception a(Exception var0) {
      return var0;
   }

   private static char[] c(String var0) {
      char[] var10000 = var0.toCharArray();
      if (var10000.length < 2) {
         var10000[0] = (char)(var10000[0] ^ 31);
      }

      return var10000;
   }

   private static String a(int var0, char[] var1) {
      int var10003 = var1.length;
      int var10002 = var0;
      char[] var10001 = var1;
      int var10000 = var10003;

      for (int var2 = 0; var10000 > var2; var2++) {
         var10001[var2] = (char)(var10001[var2] ^ var10002 ^ switch (var2 % 7) {
            case 0 -> 90;
            case 1 -> 74;
            case 2 -> 34;
            case 3 -> 22;
            case 4 -> 18;
            case 5 -> 119;
            default -> 31;
         });
      }

      return new String(var10001).intern();
   }
}
