package com.l7tech.message;

import java.util.ArrayList;
import java.util.Collection;
import java.util.logging.Logger;
import java.util.regex.Pattern;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

public class HeadersKnobSupport implements HeadersKnob {
   public static final String VALUE_SEPARATOR = ",";
   private static final Pattern a;
   private Collection<Header> b = new ArrayList<>();
   private static final Logger c;
   private static final String[] d;

   @Override
   public String[] getHeaderValues(@NotNull String var1) {
      try {
         if (var1 == null) {
            a(0);
         }
      } catch (IllegalArgumentException var2) {
         throw a(var2);
      }

      return this.getHeaderValues(var1, null);
   }

   @Override
   public String[] getHeaderNames() {
      return this.getHeaderNames(null);
   }

   @Override
   public void setHeader(@NotNull String var1, @Nullable Object var2, @NotNull String var3) {
      try {
         if (var1 == null) {
            a(1);
         }
      } catch (IllegalArgumentException var4) {
         throw a(var4);
      }

      try {
         if (var3 == null) {
            a(2);
         }
      } catch (IllegalArgumentException var5) {
         throw a(var5);
      }

      this.setHeader(var1, var2, var3, true);
   }

   @Override
   public void setHeader(@NotNull String var1, @Nullable Object var2, @NotNull String var3, boolean var4) {
      try {
         if (var1 == null) {
            a(3);
         }
      } catch (IllegalArgumentException var5) {
         throw a(var5);
      }

      try {
         if (var3 == null) {
            a(4);
         }
      } catch (IllegalArgumentException var6) {
         throw a(var6);
      }

      this.removeHeader(var1, var3);
      this.addHeader(var1, var2, var3, var4);
   }

   @Override
   public void addHeader(@NotNull String var1, @Nullable Object var2, @NotNull String var3) {
      try {
         if (var1 == null) {
            a(5);
         }
      } catch (IllegalArgumentException var4) {
         throw a(var4);
      }

      try {
         if (var3 == null) {
            a(6);
         }
      } catch (IllegalArgumentException var5) {
         throw a(var5);
      }

      this.addHeader(var1, var2, var3, true);
   }

   @Override
   public void addHeader(@NotNull String var1, @Nullable Object var2, @NotNull String var3, boolean var4) {
      try {
         if (var1 == null) {
            a(7);
         }
      } catch (IllegalArgumentException var5) {
         throw a(var5);
      }

      try {
         if (var3 == null) {
            a(8);
         }
      } catch (IllegalArgumentException var6) {
         throw a(var6);
      }

      this.b.add(new Header(var1, var2, var3, var4));
   }

   @Override
   public void removeHeader(@NotNull String var1, @NotNull String var2) {
      try {
         if (var1 == null) {
            a(9);
         }
      } catch (IllegalArgumentException var3) {
         throw a(var3);
      }

      try {
         if (var2 == null) {
            a(10);
         }
      } catch (IllegalArgumentException var4) {
         throw a(var4);
      }

      this.removeHeader(var1, var2, false);
   }

   @Override
   public void removeHeader(@NotNull String param1, @NotNull String param2, boolean param3) {
      // $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: ifnonnull 10
      // 04: bipush 11
      // 06: invokestatic com/l7tech/message/HeadersKnobSupport.a (I)V
      // 09: goto 10
      // 0c: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 0f: athrow
      // 10: aload 2
      // 11: ifnonnull 20
      // 14: bipush 12
      // 16: invokestatic com/l7tech/message/HeadersKnobSupport.a (I)V
      // 19: goto 20
      // 1c: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 1f: athrow
      // 20: new java/util/ArrayList
      // 23: dup
      // 24: invokespecial java/util/ArrayList.<init> ()V
      // 27: astore 4
      // 29: aload 0
      // 2a: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // 2d: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 32: astore 5
      // 34: aload 5
      // 36: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 3b: ifeq 82
      // 3e: aload 5
      // 40: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 45: checkcast com/l7tech/message/Header
      // 48: astore 6
      // 4a: aload 0
      // 4b: aload 1
      // 4c: iload 3
      // 4d: aload 6
      // 4f: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 52: checkcast java/lang/String
      // 55: invokevirtual com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/String;ZLjava/lang/String;)Z
      // 58: ifeq 7f
      // 5b: aload 2
      // 5c: aload 6
      // 5e: invokevirtual com/l7tech/message/Header.getType ()Ljava/lang/String;
      // 61: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 64: ifeq 7f
      // 67: goto 6e
      // 6a: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 6d: athrow
      // 6e: aload 4
      // 70: aload 6
      // 72: invokeinterface java/util/Collection.add (Ljava/lang/Object;)Z 2
      // 77: pop
      // 78: goto 7f
      // 7b: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 7e: athrow
      // 7f: goto 34
      // 82: aload 4
      // 84: invokeinterface java/util/Collection.isEmpty ()Z 1
      // 89: ifeq a8
      // 8c: getstatic com/l7tech/message/HeadersKnobSupport.c Ljava/util/logging/Logger;
      // 8f: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 92: aload 1
      // 93: getstatic com/l7tech/message/HeadersKnobSupport.d [Ljava/lang/String;
      // 96: bipush 0
      // 97: aaload
      // 98: swap
      // 99: 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" ]
      // 9e: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // a1: goto a8
      // a4: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // a7: athrow
      // a8: aload 0
      // a9: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // ac: aload 4
      // ae: invokeinterface java/util/Collection.removeAll (Ljava/util/Collection;)Z 2
      // b3: pop
      // b4: return
      // try (0 -> 4): 5 java/lang/IllegalArgumentException
      // try (7 -> 11): 12 java/lang/IllegalArgumentException
      // try (29 -> 42): 43 java/lang/IllegalArgumentException
      // try (37 -> 49): 50 java/lang/IllegalArgumentException
      // try (53 -> 65): 66 java/lang/IllegalArgumentException
   }

   @Override
   public void removeHeader(@NotNull String var1, @Nullable Object var2, @NotNull String var3) {
      try {
         if (var1 == null) {
            a(13);
         }
      } catch (IllegalArgumentException var4) {
         throw a(var4);
      }

      try {
         if (var3 == null) {
            a(14);
         }
      } catch (IllegalArgumentException var5) {
         throw a(var5);
      }

      this.removeHeader(var1, var2, var3, false);
   }

   @Override
   public void removeHeader(@NotNull String param1, @Nullable Object param2, @NotNull String param3, boolean param4) {
      // $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 1
      // 001: ifnonnull 010
      // 004: bipush 15
      // 006: invokestatic com/l7tech/message/HeadersKnobSupport.a (I)V
      // 009: goto 010
      // 00c: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 00f: athrow
      // 010: aload 3
      // 011: ifnonnull 020
      // 014: bipush 16
      // 016: invokestatic com/l7tech/message/HeadersKnobSupport.a (I)V
      // 019: goto 020
      // 01c: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 01f: athrow
      // 020: new java/util/ArrayList
      // 023: dup
      // 024: invokespecial java/util/ArrayList.<init> ()V
      // 027: astore 5
      // 029: new java/util/ArrayList
      // 02c: dup
      // 02d: invokespecial java/util/ArrayList.<init> ()V
      // 030: astore 6
      // 032: aload 0
      // 033: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // 036: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 03b: astore 7
      // 03d: aload 7
      // 03f: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 044: ifeq 17f
      // 047: aload 7
      // 049: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 04e: checkcast com/l7tech/message/Header
      // 051: astore 8
      // 053: aload 0
      // 054: aload 1
      // 055: iload 4
      // 057: aload 8
      // 059: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 05c: checkcast java/lang/String
      // 05f: invokevirtual com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/String;ZLjava/lang/String;)Z
      // 062: ifeq 17c
      // 065: aload 3
      // 066: aload 8
      // 068: invokevirtual com/l7tech/message/Header.getType ()Ljava/lang/String;
      // 06b: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 06e: ifeq 17c
      // 071: goto 078
      // 074: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 077: athrow
      // 078: aload 2
      // 079: aload 8
      // 07b: invokevirtual com/l7tech/message/Header.getValue ()Ljava/lang/Object;
      // 07e: invokestatic org/apache/commons/lang3/ObjectUtils.equals (Ljava/lang/Object;Ljava/lang/Object;)Z
      // 081: ifeq 09c
      // 084: goto 08b
      // 087: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 08a: athrow
      // 08b: aload 5
      // 08d: aload 8
      // 08f: invokeinterface java/util/Collection.add (Ljava/lang/Object;)Z 2
      // 094: pop
      // 095: goto 17c
      // 098: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 09b: athrow
      // 09c: aload 8
      // 09e: invokevirtual com/l7tech/message/Header.getValue ()Ljava/lang/Object;
      // 0a1: instanceof java/lang/String
      // 0a4: ifeq 17c
      // 0a7: aload 8
      // 0a9: invokevirtual com/l7tech/message/Header.getValue ()Ljava/lang/Object;
      // 0ac: checkcast java/lang/String
      // 0af: ldc ","
      // 0b1: invokevirtual java/lang/String.contains (Ljava/lang/CharSequence;)Z
      // 0b4: ifeq 17c
      // 0b7: goto 0be
      // 0ba: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 0bd: athrow
      // 0be: new java/util/ArrayList
      // 0c1: dup
      // 0c2: invokespecial java/util/ArrayList.<init> ()V
      // 0c5: astore 9
      // 0c7: getstatic com/l7tech/message/HeadersKnobSupport.a Ljava/util/regex/Pattern;
      // 0ca: aload 8
      // 0cc: invokevirtual com/l7tech/message/Header.getValue ()Ljava/lang/Object;
      // 0cf: checkcast java/lang/String
      // 0d2: invokevirtual java/util/regex/Pattern.split (Ljava/lang/CharSequence;)[Ljava/lang/String;
      // 0d5: astore 10
      // 0d7: aload 10
      // 0d9: arraylength
      // 0da: istore 11
      // 0dc: bipush 0
      // 0dd: istore 12
      // 0df: iload 12
      // 0e1: iload 11
      // 0e3: if_icmpge 100
      // 0e6: aload 10
      // 0e8: iload 12
      // 0ea: aaload
      // 0eb: astore 13
      // 0ed: aload 9
      // 0ef: aload 13
      // 0f1: invokevirtual java/lang/String.trim ()Ljava/lang/String;
      // 0f4: invokeinterface java/util/List.add (Ljava/lang/Object;)Z 2
      // 0f9: pop
      // 0fa: iinc 12 1
      // 0fd: goto 0df
      // 100: new java/util/ArrayList
      // 103: dup
      // 104: invokespecial java/util/ArrayList.<init> ()V
      // 107: astore 10
      // 109: aload 9
      // 10b: invokeinterface java/util/List.iterator ()Ljava/util/Iterator; 1
      // 110: astore 11
      // 112: aload 11
      // 114: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 119: ifeq 145
      // 11c: aload 11
      // 11e: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 123: checkcast java/lang/String
      // 126: astore 12
      // 128: aload 2
      // 129: aload 12
      // 12b: invokestatic org/apache/commons/lang3/ObjectUtils.equals (Ljava/lang/Object;Ljava/lang/Object;)Z
      // 12e: ifeq 142
      // 131: aload 10
      // 133: aload 12
      // 135: invokeinterface java/util/List.add (Ljava/lang/Object;)Z 2
      // 13a: pop
      // 13b: goto 142
      // 13e: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 141: athrow
      // 142: goto 112
      // 145: aload 9
      // 147: aload 10
      // 149: invokeinterface java/util/List.removeAll (Ljava/util/Collection;)Z 2
      // 14e: pop
      // 14f: aload 5
      // 151: aload 8
      // 153: invokeinterface java/util/Collection.add (Ljava/lang/Object;)Z 2
      // 158: pop
      // 159: aload 6
      // 15b: new com/l7tech/message/Header
      // 15e: dup
      // 15f: aload 8
      // 161: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 164: checkcast java/lang/String
      // 167: aload 9
      // 169: ldc ","
      // 16b: invokestatic org/apache/commons/lang3/StringUtils.join (Ljava/lang/Iterable;Ljava/lang/String;)Ljava/lang/String;
      // 16e: aload 8
      // 170: invokevirtual com/l7tech/message/Header.getType ()Ljava/lang/String;
      // 173: invokespecial com/l7tech/message/Header.<init> (Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;)V
      // 176: invokeinterface java/util/Collection.add (Ljava/lang/Object;)Z 2
      // 17b: pop
      // 17c: goto 03d
      // 17f: aload 5
      // 181: invokeinterface java/util/Collection.isEmpty ()Z 1
      // 186: ifeq 1b1
      // 189: getstatic com/l7tech/message/HeadersKnobSupport.c Ljava/util/logging/Logger;
      // 18c: getstatic java/util/logging/Level.FINE Ljava/util/logging/Level;
      // 18f: aload 1
      // 190: aload 2
      // 191: invokestatic java/lang/String.valueOf (Ljava/lang/Object;)Ljava/lang/String;
      // 194: getstatic com/l7tech/message/HeadersKnobSupport.d [Ljava/lang/String;
      // 197: bipush 6
      // 199: aaload
      // 19a: dup_x2
      // 19b: pop
      // 19c: getstatic com/l7tech/message/HeadersKnobSupport.d [Ljava/lang/String;
      // 19f: bipush 1
      // 1a0: aaload
      // 1a1: swap
      // 1a2: 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" ]
      // 1a7: invokevirtual java/util/logging/Logger.log (Ljava/util/logging/Level;Ljava/lang/String;)V
      // 1aa: goto 1b1
      // 1ad: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 1b0: athrow
      // 1b1: aload 0
      // 1b2: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // 1b5: aload 5
      // 1b7: invokeinterface java/util/Collection.removeAll (Ljava/util/Collection;)Z 2
      // 1bc: pop
      // 1bd: aload 0
      // 1be: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // 1c1: aload 6
      // 1c3: invokeinterface java/util/Collection.addAll (Ljava/util/Collection;)Z 2
      // 1c8: pop
      // 1c9: return
      // try (0 -> 4): 5 java/lang/IllegalArgumentException
      // try (7 -> 11): 12 java/lang/IllegalArgumentException
      // try (33 -> 46): 47 java/lang/IllegalArgumentException
      // try (41 -> 54): 55 java/lang/IllegalArgumentException
      // try (49 -> 62): 62 java/lang/IllegalArgumentException
      // try (64 -> 74): 75 java/lang/IllegalArgumentException
      // try (120 -> 128): 129 java/lang/IllegalArgumentException
      // try (155 -> 174): 175 java/lang/IllegalArgumentException
   }

   @Override
   public boolean containsHeader(@NotNull String param1, @NotNull String 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:
      // 00: aload 1
      // 01: ifnonnull 10
      // 04: bipush 17
      // 06: invokestatic com/l7tech/message/HeadersKnobSupport.a (I)V
      // 09: goto 10
      // 0c: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 0f: athrow
      // 10: aload 2
      // 11: ifnonnull 20
      // 14: bipush 18
      // 16: invokestatic com/l7tech/message/HeadersKnobSupport.a (I)V
      // 19: goto 20
      // 1c: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 1f: athrow
      // 20: aload 0
      // 21: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // 24: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 29: astore 3
      // 2a: aload 3
      // 2b: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 30: ifeq 69
      // 33: aload 3
      // 34: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 39: checkcast com/l7tech/message/Header
      // 3c: astore 4
      // 3e: aload 4
      // 40: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 43: checkcast java/lang/String
      // 46: aload 1
      // 47: invokevirtual java/lang/String.equalsIgnoreCase (Ljava/lang/String;)Z
      // 4a: ifeq 66
      // 4d: aload 2
      // 4e: aload 4
      // 50: invokevirtual com/l7tech/message/Header.getType ()Ljava/lang/String;
      // 53: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 56: ifeq 66
      // 59: goto 60
      // 5c: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 5f: athrow
      // 60: bipush 1
      // 61: ireturn
      // 62: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 65: athrow
      // 66: goto 2a
      // 69: bipush 0
      // 6a: ireturn
      // try (0 -> 4): 5 java/lang/IllegalArgumentException
      // try (7 -> 11): 12 java/lang/IllegalArgumentException
      // try (25 -> 36): 37 java/lang/IllegalArgumentException
      // try (31 -> 41): 41 java/lang/IllegalArgumentException
   }

   @Override
   public Collection<Header> getHeaders() {
      return this.getHeaders(null);
   }

   @Override
   public Collection<Header> getHeaders(@Nullable String var1) {
      return this.getHeaders(var1, true);
   }

   @Override
   public Collection<Header> getHeaders(@Nullable String param1, boolean 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:
      // 00: new java/util/ArrayList
      // 03: dup
      // 04: invokespecial java/util/ArrayList.<init> ()V
      // 07: astore 3
      // 08: aload 0
      // 09: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // 0c: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 11: astore 4
      // 13: aload 4
      // 15: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 1a: ifeq 6e
      // 1d: aload 4
      // 1f: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 24: checkcast com/l7tech/message/Header
      // 27: astore 5
      // 29: aload 5
      // 2b: invokevirtual com/l7tech/message/Header.isPassThrough ()Z
      // 2e: ifne 3c
      // 31: iload 2
      // 32: ifeq 6b
      // 35: goto 3c
      // 38: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 3b: athrow
      // 3c: aconst_null
      // 3d: aload 1
      // 3e: if_acmpeq 5b
      // 41: goto 48
      // 44: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 47: athrow
      // 48: aload 1
      // 49: aload 5
      // 4b: invokevirtual com/l7tech/message/Header.getType ()Ljava/lang/String;
      // 4e: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 51: ifeq 6b
      // 54: goto 5b
      // 57: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 5a: athrow
      // 5b: aload 3
      // 5c: aload 5
      // 5e: invokeinterface java/util/Collection.add (Ljava/lang/Object;)Z 2
      // 63: pop
      // 64: goto 6b
      // 67: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 6a: athrow
      // 6b: goto 13
      // 6e: aload 3
      // 6f: invokestatic java/util/Collections.unmodifiableCollection (Ljava/util/Collection;)Ljava/util/Collection;
      // 72: areturn
      // try (15 -> 20): 21 java/lang/IllegalArgumentException
      // try (18 -> 26): 27 java/lang/IllegalArgumentException
      // try (23 -> 34): 35 java/lang/IllegalArgumentException
      // try (29 -> 41): 42 java/lang/IllegalArgumentException
   }

   @Override
   public Collection<Header> getHeaders(@NotNull String var1, @Nullable String var2) {
      try {
         if (var1 == null) {
            a(19);
         }
      } catch (IllegalArgumentException var3) {
         throw a(var3);
      }

      return this.getHeaders(var1, var2, true);
   }

   @Override
   public Collection<Header> getHeaders(@NotNull String param1, @Nullable String param2, boolean param3) {
      // $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: ifnonnull 10
      // 04: bipush 20
      // 06: invokestatic com/l7tech/message/HeadersKnobSupport.a (I)V
      // 09: goto 10
      // 0c: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 0f: athrow
      // 10: new java/util/ArrayList
      // 13: dup
      // 14: invokespecial java/util/ArrayList.<init> ()V
      // 17: astore 4
      // 19: aload 0
      // 1a: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // 1d: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 22: astore 5
      // 24: aload 5
      // 26: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 2b: ifeq 96
      // 2e: aload 5
      // 30: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 35: checkcast com/l7tech/message/Header
      // 38: astore 6
      // 3a: aload 6
      // 3c: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 3f: checkcast java/lang/String
      // 42: aload 1
      // 43: invokevirtual java/lang/String.equalsIgnoreCase (Ljava/lang/String;)Z
      // 46: ifeq 93
      // 49: aload 6
      // 4b: invokevirtual com/l7tech/message/Header.isPassThrough ()Z
      // 4e: ifne 63
      // 51: goto 58
      // 54: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 57: athrow
      // 58: iload 3
      // 59: ifeq 93
      // 5c: goto 63
      // 5f: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 62: athrow
      // 63: aconst_null
      // 64: aload 2
      // 65: if_acmpeq 82
      // 68: goto 6f
      // 6b: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 6e: athrow
      // 6f: aload 2
      // 70: aload 6
      // 72: invokevirtual com/l7tech/message/Header.getType ()Ljava/lang/String;
      // 75: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 78: ifeq 93
      // 7b: goto 82
      // 7e: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 81: athrow
      // 82: aload 4
      // 84: aload 6
      // 86: invokeinterface java/util/Collection.add (Ljava/lang/Object;)Z 2
      // 8b: pop
      // 8c: goto 93
      // 8f: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 92: athrow
      // 93: goto 24
      // 96: aload 4
      // 98: invokestatic java/util/Collections.unmodifiableCollection (Ljava/util/Collection;)Ljava/util/Collection;
      // 9b: areturn
      // try (0 -> 4): 5 java/lang/IllegalArgumentException
      // try (22 -> 31): 32 java/lang/IllegalArgumentException
      // try (28 -> 36): 37 java/lang/IllegalArgumentException
      // try (34 -> 42): 43 java/lang/IllegalArgumentException
      // try (39 -> 50): 51 java/lang/IllegalArgumentException
      // try (45 -> 57): 58 java/lang/IllegalArgumentException
   }

   @Override
   public String[] getHeaderValues(@NotNull String var1, @Nullable String var2) {
      try {
         if (var1 == null) {
            a(21);
         }
      } catch (IllegalArgumentException var3) {
         throw a(var3);
      }

      return this.getHeaderValues(var1, var2, true);
   }

   @Override
   public String[] getHeaderValues(@NotNull String param1, @Nullable String param2, boolean param3) {
      // $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: ifnonnull 10
      // 04: bipush 22
      // 06: invokestatic com/l7tech/message/HeadersKnobSupport.a (I)V
      // 09: goto 10
      // 0c: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 0f: athrow
      // 10: new java/util/ArrayList
      // 13: dup
      // 14: invokespecial java/util/ArrayList.<init> ()V
      // 17: astore 4
      // 19: aload 0
      // 1a: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // 1d: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 22: astore 5
      // 24: aload 5
      // 26: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 2b: ifeq ac
      // 2e: aload 5
      // 30: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 35: checkcast com/l7tech/message/Header
      // 38: astore 6
      // 3a: aload 6
      // 3c: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 3f: checkcast java/lang/String
      // 42: aload 1
      // 43: invokevirtual java/lang/String.equalsIgnoreCase (Ljava/lang/String;)Z
      // 46: ifeq a9
      // 49: aload 6
      // 4b: invokevirtual com/l7tech/message/Header.isPassThrough ()Z
      // 4e: ifne 63
      // 51: goto 58
      // 54: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 57: athrow
      // 58: iload 3
      // 59: ifeq a9
      // 5c: goto 63
      // 5f: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 62: athrow
      // 63: aconst_null
      // 64: aload 2
      // 65: if_acmpeq 82
      // 68: goto 6f
      // 6b: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 6e: athrow
      // 6f: aload 2
      // 70: aload 6
      // 72: invokevirtual com/l7tech/message/Header.getType ()Ljava/lang/String;
      // 75: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 78: ifeq a9
      // 7b: goto 82
      // 7e: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 81: athrow
      // 82: aload 4
      // 84: aload 6
      // 86: invokevirtual com/l7tech/message/Header.getValue ()Ljava/lang/Object;
      // 89: ifnonnull 9b
      // 8c: goto 93
      // 8f: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 92: athrow
      // 93: aconst_null
      // 94: goto a3
      // 97: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 9a: athrow
      // 9b: aload 6
      // 9d: invokevirtual com/l7tech/message/Header.getValue ()Ljava/lang/Object;
      // a0: invokevirtual java/lang/Object.toString ()Ljava/lang/String;
      // a3: invokeinterface java/util/Collection.add (Ljava/lang/Object;)Z 2
      // a8: pop
      // a9: goto 24
      // ac: aload 4
      // ae: aload 4
      // b0: invokeinterface java/util/Collection.size ()I 1
      // b5: anewarray 233
      // b8: invokeinterface java/util/Collection.toArray ([Ljava/lang/Object;)[Ljava/lang/Object; 2
      // bd: checkcast [Ljava/lang/String;
      // c0: areturn
      // try (0 -> 4): 5 java/lang/IllegalArgumentException
      // try (22 -> 31): 32 java/lang/IllegalArgumentException
      // try (28 -> 36): 37 java/lang/IllegalArgumentException
      // try (34 -> 42): 43 java/lang/IllegalArgumentException
      // try (39 -> 50): 51 java/lang/IllegalArgumentException
      // try (45 -> 57): 58 java/lang/IllegalArgumentException
      // try (53 -> 62): 62 java/lang/IllegalArgumentException
   }

   @Override
   public String[] getHeaderNames(@Nullable String var1) {
      return this.getHeaderNames(var1, true, false);
   }

   @Override
   public String[] getHeaderNames(@Nullable String param1, boolean param2, boolean param3) {
      // $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: iload 3
      // 01: ifeq 12
      // 04: new java/util/TreeSet
      // 07: dup
      // 08: invokespecial java/util/TreeSet.<init> ()V
      // 0b: goto 1c
      // 0e: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 11: athrow
      // 12: new java/util/TreeSet
      // 15: dup
      // 16: getstatic java/lang/String.CASE_INSENSITIVE_ORDER Ljava/util/Comparator;
      // 19: invokespecial java/util/TreeSet.<init> (Ljava/util/Comparator;)V
      // 1c: astore 4
      // 1e: aload 0
      // 1f: getfield com/l7tech/message/HeadersKnobSupport.b Ljava/util/Collection;
      // 22: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 27: astore 5
      // 29: aload 5
      // 2b: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 30: ifeq 8b
      // 33: aload 5
      // 35: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 3a: checkcast com/l7tech/message/Header
      // 3d: astore 6
      // 3f: aload 6
      // 41: invokevirtual com/l7tech/message/Header.isPassThrough ()Z
      // 44: ifne 52
      // 47: iload 2
      // 48: ifeq 88
      // 4b: goto 52
      // 4e: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 51: athrow
      // 52: aconst_null
      // 53: aload 1
      // 54: if_acmpeq 71
      // 57: goto 5e
      // 5a: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 5d: athrow
      // 5e: aload 1
      // 5f: aload 6
      // 61: invokevirtual com/l7tech/message/Header.getType ()Ljava/lang/String;
      // 64: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 67: ifeq 88
      // 6a: goto 71
      // 6d: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 70: athrow
      // 71: aload 4
      // 73: aload 6
      // 75: invokevirtual com/l7tech/message/Header.getKey ()Ljava/lang/Object;
      // 78: checkcast java/lang/String
      // 7b: invokeinterface java/util/Collection.add (Ljava/lang/Object;)Z 2
      // 80: pop
      // 81: goto 88
      // 84: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 87: athrow
      // 88: goto 29
      // 8b: aload 4
      // 8d: aload 4
      // 8f: invokeinterface java/util/Collection.size ()I 1
      // 94: anewarray 233
      // 97: invokeinterface java/util/Collection.toArray ([Ljava/lang/Object;)[Ljava/lang/Object; 2
      // 9c: checkcast [Ljava/lang/String;
      // 9f: areturn
      // try (0 -> 6): 6 java/lang/IllegalArgumentException
      // try (24 -> 29): 30 java/lang/IllegalArgumentException
      // try (27 -> 35): 36 java/lang/IllegalArgumentException
      // try (32 -> 43): 44 java/lang/IllegalArgumentException
      // try (38 -> 52): 53 java/lang/IllegalArgumentException
   }

   private boolean a(String param1, boolean param2, String param3) {
      // $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: iload 2
      // 01: ifne 13
      // 04: aload 3
      // 05: aload 1
      // 06: invokevirtual java/lang/String.equalsIgnoreCase (Ljava/lang/String;)Z
      // 09: ifne 2d
      // 0c: goto 13
      // 0f: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 12: athrow
      // 13: iload 2
      // 14: ifeq 35
      // 17: goto 1e
      // 1a: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 1d: athrow
      // 1e: aload 3
      // 1f: aload 1
      // 20: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 23: ifeq 35
      // 26: goto 2d
      // 29: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 2c: athrow
      // 2d: bipush 1
      // 2e: goto 36
      // 31: invokestatic com/l7tech/message/HeadersKnobSupport.a (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 34: athrow
      // 35: bipush 0
      // 36: ireturn
      // try (0 -> 6): 7 java/lang/IllegalArgumentException
      // try (2 -> 11): 12 java/lang/IllegalArgumentException
      // try (9 -> 18): 19 java/lang/IllegalArgumentException
      // try (14 -> 23): 23 java/lang/IllegalArgumentException
   }

   static {
      String[] var5 = new String[14];
      int var3 = 0;
      String var2 = "[kEV\u0002Q#pvEX\bE)q$\u0012W\u0013Xg{e\b[]\u0010\f5e\u000bZGF&yq\u0000\u0004G\nra\u0011v\u0002Q#pv\u0016\u0004a}\u0015[!=(9MM\u0019o*9M\u0001]k\u00197YO\u001c<neH.G\u0017Mk\u00197YO\u001aN\u000evk\u000bJ\u0006Y)fL\u0000_\u0003U5\u001b[kEV\u0002Q#pvEX\bE)q$\u0012W\u0013Xg{e\b[]\u0010\u0004{e\b[\tfa\u0011v\u0002Q#pv%vk\b\u0011\u000b\u00073pg\r\u0011\nU4fe\u0002[Hx\"t`\u0000L\u0014{)zf6K\u0017@(gp\tt`\u0001v\u0002Q#pv\fga\bQ\u0011U\u000fpe\u0001[\u0015";
      int var4 = "[kEV\u0002Q#pvEX\bE)q$\u0012W\u0013Xg{e\b[]\u0010\f5e\u000bZGF&yq\u0000\u0004G\nra\u0011v\u0002Q#pv\u0016\u0004a}\u0015[!=(9MM\u0019o*9M\u0001]k\u00197YO\u001c<neH.G\u0017Mk\u00197YO\u001aN\u000evk\u000bJ\u0006Y)fL\u0000_\u0003U5\u001b[kEV\u0002Q#pvEX\bE)q$\u0012W\u0013Xg{e\b[]\u0010\u0004{e\b[\tfa\u0011v\u0002Q#pv%vk\b\u0011\u000b\u00073pg\r\u0011\nU4fe\u0002[Hx\"t`\u0000L\u0014{)zf6K\u0017@(gp\tt`\u0001v\u0002Q#pv\fga\bQ\u0011U\u000fpe\u0001[\u0015"
         .length();
      char var1 = 27;
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 108;
         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) {
                     d = var5;
                     a = Pattern.compile(d[4]);
                     c = Logger.getLogger(HeadersKnobSupport.class.getName());
                     return;
                  }

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

                  var2 = "+\t}4u*V\u001e[|.jox$\u0014n\u000fm#TJ\u000b{3y\"]\u001e\u001eha?jKM[u'8jKD^iau:K\u001e[t.loZ\u000f[t4t#\u000f\r\u001en\t}.\\\u000f\tL t:]\u0019";
                  var4 = "+\t}4u*V\u001e[|.jox$\u0014n\u000fm#TJ\u000b{3y\"]\u001e\u001eha?jKM[u'8jKD^iau:K\u001e[t.loZ\u000f[t4t#\u000f\r\u001en\t}.\\\u000f\tL t:]\u0019"
                     .length();
                  var1 = '>';
                  var7 = -1;
            }

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

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

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

      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 -> 121;
            case 1 -> 104;
            case 2 -> 9;
            case 3 -> 82;
            case 4 -> 11;
            case 5 -> 92;
            default -> 43;
         });
      }

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