package com.l7tech.server.policy.variable;

import com.l7tech.identity.User;
import com.l7tech.message.Message;
import com.l7tech.server.identity.AuthenticationResult;
import com.l7tech.server.message.PolicyEnforcementContext;
import com.l7tech.util.Functions.Unary;
import java.util.logging.Logger;

class bh<VT> extends bg {
   static final Unary<User, AuthenticationResult> a;
   static final Unary<String, AuthenticationResult> b;
   static final Unary<String, AuthenticationResult> c;
   private static final Logger d;
   private final String e;
   private final boolean f;
   private final Message g;
   private final Class<VT> h;
   private final Unary<VT, AuthenticationResult> i;
   private static final String[] j;

   @Override
   public Object get(String param1, PolicyEnforcementContext param2) {
      // $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: getfield com/l7tech/server/policy/variable/bh.g Lcom/l7tech/message/Message;
      // 004: ifnonnull 014
      // 007: aload 2
      // 008: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getDefaultAuthenticationContext ()Lcom/l7tech/server/message/AuthenticationContext; 1
      // 00d: goto 01e
      // 010: invokestatic com/l7tech/server/policy/variable/bh.a (Ljava/lang/NumberFormatException;)Ljava/lang/NumberFormatException;
      // 013: athrow
      // 014: aload 2
      // 015: aload 0
      // 016: getfield com/l7tech/server/policy/variable/bh.g Lcom/l7tech/message/Message;
      // 019: invokeinterface com/l7tech/server/message/PolicyEnforcementContext.getAuthenticationContext (Lcom/l7tech/message/Message;)Lcom/l7tech/server/message/AuthenticationContext; 2
      // 01e: astore 3
      // 01f: aload 3
      // 020: invokevirtual com/l7tech/server/message/AuthenticationContext.getAllAuthenticationResults ()Ljava/util/List;
      // 023: astore 4
      // 025: aload 0
      // 026: getfield com/l7tech/server/policy/variable/bh.f Z
      // 029: ifeq 06c
      // 02c: aload 1
      // 02d: aload 0
      // 02e: getfield com/l7tech/server/policy/variable/bh.e Ljava/lang/String;
      // 031: invokevirtual java/lang/String.equalsIgnoreCase (Ljava/lang/String;)Z
      // 034: ifne 044
      // 037: goto 03e
      // 03a: invokestatic com/l7tech/server/policy/variable/bh.a (Ljava/lang/NumberFormatException;)Ljava/lang/NumberFormatException;
      // 03d: athrow
      // 03e: aconst_null
      // 03f: areturn
      // 040: invokestatic com/l7tech/server/policy/variable/bh.a (Ljava/lang/NumberFormatException;)Ljava/lang/NumberFormatException;
      // 043: athrow
      // 044: aload 4
      // 046: aload 0
      // 047: getfield com/l7tech/server/policy/variable/bh.i Lcom/l7tech/util/Functions$Unary;
      // 04a: invokestatic com/l7tech/util/Functions.map (Ljava/lang/Iterable;Lcom/l7tech/util/Functions$Unary;)Ljava/util/List;
      // 04d: astore 5
      // 04f: aload 0
      // 050: getfield com/l7tech/server/policy/variable/bh.h Ljava/lang/Class;
      // 053: aload 5
      // 055: invokeinterface java/util/List.size ()I 1
      // 05a: invokestatic java/lang/reflect/Array.newInstance (Ljava/lang/Class;I)Ljava/lang/Object;
      // 05d: checkcast [Ljava/lang/Object;
      // 060: astore 6
      // 062: aload 5
      // 064: aload 6
      // 066: invokeinterface java/util/List.toArray ([Ljava/lang/Object;)[Ljava/lang/Object; 2
      // 06b: areturn
      // 06c: aload 0
      // 06d: getfield com/l7tech/server/policy/variable/bh.e Ljava/lang/String;
      // 070: invokevirtual java/lang/String.length ()I
      // 073: istore 5
      // 075: aload 1
      // 076: iload 5
      // 078: invokevirtual java/lang/String.substring (I)Ljava/lang/String;
      // 07b: astore 6
      // 07d: aload 6
      // 07f: invokevirtual java/lang/String.length ()I
      // 082: ifne 097
      // 085: aload 0
      // 086: getfield com/l7tech/server/policy/variable/bh.i Lcom/l7tech/util/Functions$Unary;
      // 089: aload 3
      // 08a: invokevirtual com/l7tech/server/message/AuthenticationContext.getLastAuthenticationResult ()Lcom/l7tech/server/identity/AuthenticationResult;
      // 08d: invokeinterface com/l7tech/util/Functions$Unary.call (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 092: areturn
      // 093: invokestatic com/l7tech/server/policy/variable/bh.a (Ljava/lang/NumberFormatException;)Ljava/lang/NumberFormatException;
      // 096: athrow
      // 097: aload 6
      // 099: ldc "."
      // 09b: invokevirtual java/lang/String.startsWith (Ljava/lang/String;)Z
      // 09e: ifne 0be
      // 0a1: new java/lang/IllegalArgumentException
      // 0a4: dup
      // 0a5: aload 1
      // 0a6: getstatic com/l7tech/server/policy/variable/bh.j [Ljava/lang/String;
      // 0a9: bipush 3
      // 0aa: aaload
      // 0ab: swap
      // 0ac: getstatic com/l7tech/server/policy/variable/bh.j [Ljava/lang/String;
      // 0af: bipush 4
      // 0b0: aaload
      // 0b1: invokedynamic makeConcatWithConstants (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" ]
      // 0b6: invokespecial java/lang/IllegalArgumentException.<init> (Ljava/lang/String;)V
      // 0b9: athrow
      // 0ba: invokestatic com/l7tech/server/policy/variable/bh.a (Ljava/lang/NumberFormatException;)Ljava/lang/NumberFormatException;
      // 0bd: athrow
      // 0be: aload 1
      // 0bf: iload 5
      // 0c1: bipush 1
      // 0c2: iadd
      // 0c3: invokevirtual java/lang/String.substring (I)Ljava/lang/String;
      // 0c6: astore 7
      // 0c8: aload 7
      // 0ca: invokestatic java/lang/Integer.parseInt (Ljava/lang/String;)I
      // 0cd: istore 8
      // 0cf: iload 8
      // 0d1: iflt 0e7
      // 0d4: iload 8
      // 0d6: aload 4
      // 0d8: invokeinterface java/util/List.size ()I 1
      // 0dd: if_icmplt 117
      // 0e0: goto 0e7
      // 0e3: invokestatic com/l7tech/server/policy/variable/bh.a (Ljava/lang/NumberFormatException;)Ljava/lang/NumberFormatException;
      // 0e6: athrow
      // 0e7: getstatic com/l7tech/server/policy/variable/bh.d Ljava/util/logging/Logger;
      // 0ea: iload 8
      // 0ec: ifge 102
      // 0ef: goto 0f6
      // 0f2: invokestatic com/l7tech/server/policy/variable/bh.a (Ljava/lang/NumberFormatException;)Ljava/lang/NumberFormatException;
      // 0f5: athrow
      // 0f6: getstatic com/l7tech/server/policy/variable/bh.j [Ljava/lang/String;
      // 0f9: bipush 1
      // 0fa: aaload
      // 0fb: goto 10b
      // 0fe: invokestatic com/l7tech/server/policy/variable/bh.a (Ljava/lang/NumberFormatException;)Ljava/lang/NumberFormatException;
      // 101: athrow
      // 102: getstatic com/l7tech/server/policy/variable/bh.j [Ljava/lang/String;
      // 105: astore 10
      // 107: aload 10
      // 109: bipush 0
      // 10a: aaload
      // 10b: iload 8
      // 10d: invokedynamic makeConcatWithConstants (Ljava/lang/String;I)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" ]
      // 112: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 115: aconst_null
      // 116: areturn
      // 117: aload 4
      // 119: iload 8
      // 11b: invokeinterface java/util/List.get (I)Ljava/lang/Object; 2
      // 120: checkcast com/l7tech/server/identity/AuthenticationResult
      // 123: astore 9
      // 125: aload 0
      // 126: getfield com/l7tech/server/policy/variable/bh.i Lcom/l7tech/util/Functions$Unary;
      // 129: aload 9
      // 12b: invokeinterface com/l7tech/util/Functions$Unary.call (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 130: areturn
      // 131: astore 8
      // 133: getstatic com/l7tech/server/policy/variable/bh.d Ljava/util/logging/Logger;
      // 136: aload 1
      // 137: aload 8
      // 139: invokevirtual java/lang/NumberFormatException.getMessage ()Ljava/lang/String;
      // 13c: getstatic com/l7tech/server/policy/variable/bh.j [Ljava/lang/String;
      // 13f: astore 10
      // 141: aload 10
      // 143: bipush 2
      // 144: aaload
      // 145: dup_x2
      // 146: pop
      // 147: aload 10
      // 149: bipush 5
      // 14a: aaload
      // 14b: swap
      // 14c: 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" ]
      // 151: invokevirtual java/util/logging/Logger.info (Ljava/lang/String;)V
      // 154: aconst_null
      // 155: areturn
      // try (103 -> 113): 113 java/lang/NumberFormatException
      // try (96 -> 106): 107 java/lang/NumberFormatException
      // try (94 -> 100): 101 java/lang/NumberFormatException
      // try (66 -> 83): 83 java/lang/NumberFormatException
      // try (55 -> 64): 64 java/lang/NumberFormatException
      // try (19 -> 29): 29 java/lang/NumberFormatException
      // try (16 -> 24): 25 java/lang/NumberFormatException
      // try (0 -> 6): 6 java/lang/NumberFormatException
      // try (91 -> 124): 135 java/lang/NumberFormatException
      // try (125 -> 134): 135 java/lang/NumberFormatException
   }

   bh(String var1, boolean var2, Class<VT> var3, Unary<VT, AuthenticationResult> var4, Message var5) {
      this.e = var1;
      this.f = var2;
      this.g = var5;
      this.h = var3;
      this.i = var4;
   }

   static {
      String[] var5 = new String[6];
      int var3 = 0;
      String var2 = ")h\u0015\u0007unH2`\t\u0007quS/b\u000fSycF3n\u000eI0rB4r\rSc:\u0007*&r\u0015OunS.d\u0000SyoIgu\u0004TelSgn\u000fCux\u0007(r\u0015\u0007\u007ff\u00075f\u000f@u:\u0007#\u0010f\u0012\u0007uxW\"d\u0015N~g\u0007&'\u000fR}bB5'\u0012RvfN?'\u0016Ndh\u0007\n\u0011f\u0013NqbK\"'F";
      int var4 = ")h\u0015\u0007unH2`\t\u0007quS/b\u000fSycF3n\u000eI0rB4r\rSc:\u0007*&r\u0015OunS.d\u0000SyoIgu\u0004TelSgn\u000fCux\u0007(r\u0015\u0007\u007ff\u00075f\u000f@u:\u0007#\u0010f\u0012\u0007uxW\"d\u0015N~g\u0007&'\u000fR}bB5'\u0012RvfN?'\u0016Ndh\u0007\n\u0011f\u0013NqbK\"'F"
         .length();
      char var1 = '#';
      int var7 = -1;

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

         while (true) {
            String var8 = a(var10000, a(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     j = var5;
                     a = new ar();
                     b = new as();
                     c = new at();
                     d = Logger.getLogger(bh.class.getName());
                     return;
                  }

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

                  var2 = "=zX\u0015(.Zt5HZ%<\f\u007fz]Z=8\bs5XZ/8\u001cu(YZ95\u001f:*]\b,0\u001fn?NZ#<\u0017\u007ft\u00024z";
                  var4 = "=zX\u0015(.Zt5HZ%<\f\u007fz]Z=8\bs5XZ/8\u001cu(YZ95\u001f:*]\b,0\u001fn?NZ#<\u0017\u007ft\u00024z".length();
                  var1 = '3';
                  var7 = -1;
            }

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

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

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

      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 -> 70;
            case 1 -> 6;
            case 2 -> 96;
            case 3 -> 38;
            case 4 -> 17;
            case 5 -> 1;
            default -> 38;
         });
      }

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