package com.l7tech.policy.assertion.composite;

import com.l7tech.policy.assertion.Assertion;
import com.l7tech.policy.assertion.AssertionMetadata;
import com.l7tech.policy.assertion.DefaultAssertionMetadata;
import com.l7tech.policy.assertion.SetsVariables;
import com.l7tech.policy.variable.DataType;
import com.l7tech.policy.variable.VariableMetadata;
import java.util.List;

public class HandleErrorsAssertion extends CompositeAssertion implements SetsVariables {
   public static final String VARIABLE_PREFIX;
   private static final String META_INITIALIZED;
   private String variablePrefix;
   private boolean includeIOException;
   static final long serialVersionUID = 5731275665270291289L;
   private static final String[] c;

   public HandleErrorsAssertion() {
      this.variablePrefix = c[15];
   }

   public HandleErrorsAssertion(List<? extends Assertion> var1) {
      super(var1);
      this.variablePrefix = c[17];
   }

   public boolean isRoot() {
      return this.getParent() == null;
   }

   @Override
   public boolean permitsEmpty() {
      return true;
   }

   public String getVariablePrefix() {
      return this.variablePrefix;
   }

   public void setVariablePrefix(String var1) {
      this.variablePrefix = var1;
   }

   public boolean isIncludeIOException() {
      return this.includeIOException;
   }

   public void setIncludeIOException(boolean var1) {
      this.includeIOException = var1;
   }

   @Override
   public AssertionMetadata meta() {
      DefaultAssertionMetadata var1 = super.defaultMeta();
      if (Boolean.TRUE.equals(var1.get(META_INITIALIZED))) {
         return var1;
      }

      String[] var2 = c;
      var1.put(var2[12], new String[]{var2[19]});
      var1.put(var2[22], var2[2]);
      var1.put(var2[7], var2[11]);
      var1.put(var2[23], var2[13]);
      var1.put(var2[20], var2[18]);
      var1.put(var2[25], var2[0]);
      var1.put(var2[24], var2[8]);
      var1.put(var2[14], var2[6]);
      var1.put(var2[1], var2[3]);
      var1.put(var2[9], var2[21]);
      var1.put(var2[10], var2[16]);
      var1.put(var2[4], var2[26]);
      var1.put(META_INITIALIZED, Boolean.TRUE);
      return var1;
   }

   @Override
   public VariableMetadata[] getVariablesSet() {
      return this.variablePrefix == null
         ? new VariableMetadata[0]
         : new VariableMetadata[]{new VariableMetadata(this.getVariablePrefix() + c[5], false, false, null, false, DataType.STRING)};
   }

   public HandleErrorsAssertion clone() {
      HandleErrorsAssertion var1 = (HandleErrorsAssertion)super.clone();
      var1.setVariablePrefix(this.variablePrefix);
      return var1;
   }

   static {
      String[] var5 = new String[28];
      int var3 = 0;
      String var2 = "\u0018wO4k7e\u001e{J4do\u007f\bwN\u007f)tc\u001e}\fjhlx\u0018a\fRfnu\u0017}ghuoc\bYQibre\u0012wLNuet5wF\u007f\u0019\u000bjMjbre\u0012}Q_cie\u0014javfsb\u0015yO\u007f'\u0018wO5k7e\u001e{J5do\u007f\bwN\u007f(rt\bwWhdebT~MvcecU\u007fK|6\u0018wO4k7e\u001e{J4do\u007f\bwN\u007f)pp\u0015}Ni)Hp\u0015|N\u007fBrc\u0014jQJuoa\u001ejVsbsU\u0012yNu`\u000e\u001d}Cnrrt(}VTfmt\bUuGitav\u001e'\u0018wO5k7e\u001e{J5do\u007f\bwN\u007f(rt\bwWhdebT~MvcecU\u007fK|\u0012\u000bwNsdy_\u0014|GSdo\u007f4hGt\u00183yL~ke1>jPuus1+jMjbre\u0012}Q\u0017\fkRN~pt6yRjnnv8tCitnp\u0016}\u0015\u000bwNsdyP\u001fnKybC}\u001akQtfmt+\u0018wO5k7e\u001e{J5do\u007f\bwN\u007f(rt\bwWhdebT~Mvcec4hGt)gx\u001d\u000e\u000byN\u007fstt=wN~brb\r3yL~ke1>jPuus\u0014\u000bjMjbre\u0012}Q[dtx\u0014vkyhn\u000b\u0013yL~keT\tjMh\u0004\u001amVu\u000b\u0013yL~keT\tjMh)3yL~ke1\u001ejPuus1\tyKibd1\u0019a\u0002yoi}\u001f8Citec\u000fqMtt.\u000b\u000bwNsdy]\u0014\u007fKy\u000b\u001f}Qyuia\u000fqMtF\u0018wO4k7e\u001e{J4wo}\u0012{[4fsb\u001ejVshn?\u0018wOjhsx\u000f}\fRfnu\u0017}ghuoc\bYQibre\u0012wLN~pt6yRjnnv\u000f\u000byN\u007fstt5wF\u007fNc~\u0015\t\bpMhsNp\u0016}\u0014\u000bjMjbre\u0012}Q[dtx\u0014vl{je\u0013\u000bwNsdy_\u0014|GYkab\bvCwb";
      int var4 = "\u0018wO4k7e\u001e{J4do\u007f\bwN\u007f)tc\u001e}\fjhlx\u0018a\fRfnu\u0017}ghuoc\bYQibre\u0012wLNuet5wF\u007f\u0019\u000bjMjbre\u0012}Q_cie\u0014javfsb\u0015yO\u007f'\u0018wO5k7e\u001e{J5do\u007f\bwN\u007f(rt\bwWhdebT~MvcecU\u007fK|6\u0018wO4k7e\u001e{J4do\u007f\bwN\u007f)pp\u0015}Ni)Hp\u0015|N\u007fBrc\u0014jQJuoa\u001ejVsbsU\u0012yNu`\u000e\u001d}Cnrrt(}VTfmt\bUuGitav\u001e'\u0018wO5k7e\u001e{J5do\u007f\bwN\u007f(rt\bwWhdebT~MvcecU\u007fK|\u0012\u000bwNsdy_\u0014|GSdo\u007f4hGt\u00183yL~ke1>jPuus1+jMjbre\u0012}Q\u0017\fkRN~pt6yRjnnv8tCitnp\u0016}\u0015\u000bwNsdyP\u001fnKybC}\u001akQtfmt+\u0018wO5k7e\u001e{J5do\u007f\bwN\u007f(rt\bwWhdebT~Mvcec4hGt)gx\u001d\u000e\u000byN\u007fstt=wN~brb\r3yL~ke1>jPuus\u0014\u000bjMjbre\u0012}Q[dtx\u0014vkyhn\u000b\u0013yL~keT\tjMh\u0004\u001amVu\u000b\u0013yL~keT\tjMh)3yL~ke1\u001ejPuus1\tyKibd1\u0019a\u0002yoi}\u001f8Citec\u000fqMtt.\u000b\u000bwNsdy]\u0014\u007fKy\u000b\u001f}Qyuia\u000fqMtF\u0018wO4k7e\u001e{J4wo}\u0012{[4fsb\u001ejVshn?\u0018wOjhsx\u000f}\fRfnu\u0017}ghuoc\bYQibre\u0012wLN~pt6yRjnnv\u000f\u000byN\u007fstt5wF\u007fNc~\u0015\t\bpMhsNp\u0016}\u0014\u000bjMjbre\u0012}Q[dtx\u0014vl{je\u0013\u000bwNsdy_\u0014|GYkab\bvCwb"
         .length();
      char var1 = '<';
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 27;
         String var10001 = var2.substring(++var7, var7 + var1);
         byte var10002 = -1;

         while (true) {
            String var8 = c(var10000, c(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     c = var5;
                     VARIABLE_PREFIX = c[15];
                     META_INITIALIZED = HandleErrorsAssertion.class.getName() + c[27];
                     return;
                  }

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

                  var2 = ";\u00168\u001d\u0002+\u0015r\u00039[\u0014=\u001d/\u0006\u000e\f\u0018g\u0011\u0003\u001c\u0006\u001c\u0010r\u001c#\b\n\f";
                  var4 = ";\u00168\u001d\u0002+\u0015r\u00039[\u0014=\u001d/\u0006\u000e\f\u0018g\u0011\u0003\u001c\u0006\u001c\u0010r\u001c#\b\n\f".length();
                  var1 = 11;
                  var7 = -1;
            }

            var10000 = 115;
            var10001 = var2.substring(++var7, var7 + var1);
            var10002 = 0;
         }
      }
   }

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

      return var10000;
   }

   private static String c(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 -> 96;
            case 1 -> 3;
            case 2 -> 57;
            case 3 -> 1;
            case 4 -> 28;
            case 5 -> 27;
            default -> 10;
         });
      }

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