package com.l7tech.external.assertions.gatewaygraphql.server.data;

import com.fasterxml.jackson.annotation.JsonIncludeProperties;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.l7tech.common.http.HttpMethod;
import com.l7tech.external.assertions.gatewaygraphql.server.input.BundleEntityMappingInput;
import com.l7tech.external.assertions.gatewaygraphql.server.input.EntityInput;
import com.l7tech.external.assertions.gatewaygraphql.server.input.EntityPropertyInput;
import com.l7tech.external.assertions.gatewaygraphql.server.input.EntityRefInput;
import com.l7tech.external.assertions.gatewaygraphql.server.input.PolicyInput;
import com.l7tech.external.assertions.gatewaygraphql.server.resolver.ResolverExecutionContext;
import com.l7tech.external.assertions.gatewaygraphql.server.resolver.helper.ServiceDocumentHelper;
import com.l7tech.external.assertions.gatewaygraphql.server.util.Util;
import com.l7tech.gateway.common.service.PublishedService;
import com.l7tech.gateway.common.service.ServiceDocument;
import com.l7tech.policy.PolicyVersion;
import com.l7tech.xml.soap.SoapVersion;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.concurrent.atomic.AtomicReference;
import java.util.logging.Logger;
import lombok.Generated;
import lombok.NonNull;

public class L7ServiceDTO extends PublishedServiceDTO {
   @Generated
   private static final Logger d;
   public static final String DEFAULT_SOAP_URI;
   public static final String SOAP_ACTION;
   public static final String SOAP_ACTIONS;
   public static final String BASE_URI;
   private final ServiceDocumentHelper e;
   private final L7ServiceDTO.L7ServiceType f;
   private static final String[] i;

   public L7ServiceDTO(PublishedService var1, ServiceDocumentHelper var2) {
      super(var1);
      this.e = var2;
      if (var1.isSoap()) {
         this.f = var1.isInternal() ? L7ServiceDTO.L7ServiceType.INTERNAL_SOAP : L7ServiceDTO.L7ServiceType.SOAP;
      } else {
         this.f = var1.isInternal() ? L7ServiceDTO.L7ServiceType.INTERNAL_WEB_API : L7ServiceDTO.L7ServiceType.WEB_API;
      }
   }

   public L7ServiceDTO.L7ServiceType getServiceType() {
      return this.f;
   }

   public String getWsdl() {
      return this.f.isSoap() ? this.entity.getWsdlXml() : null;
   }

   public String getWsdlUrl() {
      return asNullable(this.entity.getWsdlUrl());
   }

   public List<ServiceResourceDTO> getWsdlResources() {
      return asNullableList(
         this.e.getDocumentsOf(this.entity).stream().map(ServiceResourceDTO::new).sorted(Comparator.comparing(ServiceResourceDTO::getUri)).toList()
      );
   }

   public ServiceResolversDTO getResolvers() {
      return this.f.isSoap() ? ServiceResolversDTO.get(this.entity) : null;
   }

   @Override
   public String getResolutionPath() {
      String var1 = super.getResolutionPath();
      if (this.f.isSoap()) {
         return Util.isNotEmpty(var1) ? var1 : i[2];
      } else {
         return var1;
      }
   }

   public SoapVersion getSoapVersion() {
      return this.f.isSoap() ? this.entity.getSoapVersion() : null;
   }

   public boolean isLaxResolution() {
      return this.entity.isLaxResolution();
   }

   @Override
   protected Object createWrapperObject() {
      return new L7ServiceDTO.L7ServiceWrapper(this.entity, this.subEntity, this.e);
   }

   static {
      String[] var5 = new String[5];
      int var3 = 0;
      String var2 = "\";XrV'P8;W\u000735JgB6M\t~'Je87K0$";
      int var4 = "\";XrV'P8;W\u000735JgB6M\t~'Je87K0$".length();
      char var1 = '\n';
      int var7 = -1;

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

         while (true) {
            String var8 = b(var10000, a(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     i = var5;
                     String[] var9 = i;
                     SOAP_ACTION = i[0];
                     SOAP_ACTIONS = var9[3];
                     BASE_URI = var9[1];
                     DEFAULT_SOAP_URI = var9[4];
                     d = Logger.getLogger(L7ServiceDTO.class.getName());
                     return;
                  }

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

                  var2 = "\u000f\u0016u_{\n}\u0015\u0016z\\\tS\ngH\u0015\u001af\u001d\t";
                  var4 = "\u000f\u0016u_{\n}\u0015\u0016z\\\tS\ngH\u0015\u001af\u001d\t".length();
                  var1 = 11;
                  var7 = -1;
            }

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

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

      return var10000;
   }

   private static String b(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 -> 33;
            case 1 -> 36;
            case 2 -> 73;
            case 3 -> 114;
            case 4 -> 103;
            case 5 -> 52;
            default -> 84;
         });
      }

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

   public static class L7ServiceInput extends EntityInput {
      ResolverExecutionContext g;
      String h;
      String i;
      String j;
      String k;
      L7ServiceDTO.ServiceResolversInput l;
      L7ServiceDTO.L7ServiceType m;
      PolicyInput n;
      PolicyRevisionDTO.PolicyRevisionInput o;
      List<PolicyRevisionDTO.PolicyRevisionInput> p;
      Boolean q;
      List<HttpMethod> r;
      Boolean s;
      Boolean t;
      SoapVersion u;
      Boolean v;
      String w;
      String x;
      List<ServiceResourceDTO.ServiceResourceInput> y;
      List<ServiceDocument> z;
      boolean A;
      List<EntityPropertyInput> B;
      List<EntityPropertyInput> C;
      private boolean D;
      String E;
      L7ServiceDTO.L7ServiceSelector F;
      private static final String[] H;

      public void setProperties(List<EntityPropertyInput> var1) {
         this.D = true;
         this.B = var1;
      }

      public void setWsdl(String var1) {
         this.w = var1;
         this.A = true;
      }

      public boolean migratePolicyRevisions() {
         return this.getExecutionContext() != null && Util.isNotEmpty(this.getPolicyRevisions())
            ? this.getExecutionContext().getQueryOptionsSupplier().isMigratePolicyRevisionsEnabled()
            : false;
      }

      public L7ServiceDTO.L7ServiceSelector getSelector() {
         if (this.F == null) {
            this.F = new L7ServiceDTO.L7ServiceSelector(
               this.getRefInput() != null ? ((L7ServiceDTO.ServiceRefInput)this.getRefInput()).getServiceType() : this.m
            );
         }

         return this.F;
      }

      @Override
      public String getIdentityValue() {
         return this.k;
      }

      @Override
      public boolean matches(EntityMappingInstruction var1) {
         return super.matches(var1) && this.a(var1);
      }

      private boolean a(EntityMappingInstruction var1) {
         String[] var4 = H;
         Object var2 = var1.getSource(var4[30]);
         if (this.getName() != null && var2 != null) {
            return this.getName().equals(var2);
         }

         var4 = H;
         var2 = var1.getSource(var4[0]);
         if (this.getGoid() != null && var2 != null) {
            return this.getGoid().equals(var2);
         }

         var4 = H;
         return this.getResolvers() != null && var1.getSource(var4[13]) instanceof Map var3
            ? (this.getResolvers().getNormalizedSoapAction() == null || this.a(var3))
               && (this.getResolvers().getBaseUri() == null || Objects.equals(this.getResolvers().getBaseUri(), var3.get(H[25])))
            : true;
      }

      private boolean a(Map<?, ?> var1) {
         String var2 = this.b(var1);
         List var3 = this.c(var1);
         if (Util.isNotEmpty(this.l.getSoapAction())) {
            if (var2 != null) {
               return this.l.getSoapAction().equals(var2);
            }

            if (Util.isNotEmpty(var3)) {
               return var3.contains(this.l.getSoapAction());
            }
         }

         if (Util.isNotEmpty(this.l.getSoapActions())) {
            if (var2 != null) {
               return this.l.getSoapActions().contains(var2);
            }

            if (Util.isNotEmpty(var3)) {
               return this.l.getSoapActions().containsAll(var3.stream().map(String::valueOf).toList());
            }
         }

         return false;
      }

      private String b(Map<?, ?> var1) {
         Object var2 = var1.get(H[10]);
         return var2 != null ? var2.toString() : null;
      }

      private List<?> c(Map<?, ?> var1) {
         Object var2 = var1.get(H[7]);
         return var2 instanceof List ? (List)var2 : null;
      }

      @Override
      public void resetGuid() {
         this.setGuid(null);
      }

      @Generated
      @Override
      public ResolverExecutionContext getExecutionContext() {
         return this.g;
      }

      @Generated
      @Override
      public String getGuid() {
         return this.h;
      }

      @Generated
      public String getFolderPath() {
         return this.i;
      }

      @Generated
      @Override
      public String getName() {
         return this.j;
      }

      @Generated
      public String getResolutionPath() {
         return this.k;
      }

      @Generated
      public L7ServiceDTO.ServiceResolversInput getResolvers() {
         return this.l;
      }

      @Generated
      public L7ServiceDTO.L7ServiceType getServiceType() {
         return this.m;
      }

      @Generated
      public PolicyInput getPolicy() {
         return this.n;
      }

      @Generated
      public PolicyRevisionDTO.PolicyRevisionInput getPolicyRevision() {
         return this.o;
      }

      @Generated
      public List<PolicyRevisionDTO.PolicyRevisionInput> getPolicyRevisions() {
         return this.p;
      }

      @Generated
      public Boolean getEnabled() {
         return this.q;
      }

      @Generated
      public List<HttpMethod> getMethodsAllowed() {
         return this.r;
      }

      @Generated
      public Boolean getTracingEnabled() {
         return this.s;
      }

      @Generated
      public Boolean getWssProcessingEnabled() {
         return this.t;
      }

      @Generated
      public SoapVersion getSoapVersion() {
         return this.u;
      }

      @Generated
      public Boolean getLaxResolution() {
         return this.v;
      }

      @Generated
      public String getWsdl() {
         return this.w;
      }

      @Generated
      public String getWsdlUrl() {
         return this.x;
      }

      @Generated
      public List<ServiceResourceDTO.ServiceResourceInput> getWsdlResources() {
         return this.y;
      }

      @Generated
      public List<ServiceDocument> getDocuments() {
         return this.z;
      }

      @Generated
      public boolean isUpdateDocuments() {
         return this.A;
      }

      @Generated
      public List<EntityPropertyInput> getProperties() {
         return this.B;
      }

      @Generated
      public List<EntityPropertyInput> getPartialProperties() {
         return this.C;
      }

      @Generated
      public boolean isPropertiesSpecified() {
         return this.D;
      }

      @Generated
      public String getChecksum() {
         return this.E;
      }

      @Generated
      @Override
      public void setExecutionContext(ResolverExecutionContext var1) {
         this.g = var1;
      }

      @Generated
      public void setGuid(String var1) {
         this.h = var1;
      }

      @Generated
      public void setFolderPath(String var1) {
         this.i = var1;
      }

      @Generated
      public void setName(String var1) {
         this.j = var1;
      }

      @Generated
      public void setResolutionPath(String var1) {
         this.k = var1;
      }

      @Generated
      public void setResolvers(L7ServiceDTO.ServiceResolversInput var1) {
         this.l = var1;
      }

      @Generated
      public void setServiceType(L7ServiceDTO.L7ServiceType var1) {
         this.m = var1;
      }

      @Generated
      public void setPolicy(PolicyInput var1) {
         this.n = var1;
      }

      @Generated
      public void setPolicyRevision(PolicyRevisionDTO.PolicyRevisionInput var1) {
         this.o = var1;
      }

      @Generated
      public void setPolicyRevisions(List<PolicyRevisionDTO.PolicyRevisionInput> var1) {
         this.p = var1;
      }

      @Generated
      public void setEnabled(Boolean var1) {
         this.q = var1;
      }

      @Generated
      public void setMethodsAllowed(List<HttpMethod> var1) {
         this.r = var1;
      }

      @Generated
      public void setTracingEnabled(Boolean var1) {
         this.s = var1;
      }

      @Generated
      public void setWssProcessingEnabled(Boolean var1) {
         this.t = var1;
      }

      @Generated
      public void setSoapVersion(SoapVersion var1) {
         this.u = var1;
      }

      @Generated
      public void setLaxResolution(Boolean var1) {
         this.v = var1;
      }

      @Generated
      public void setWsdlUrl(String var1) {
         this.x = var1;
      }

      @Generated
      public void setWsdlResources(List<ServiceResourceDTO.ServiceResourceInput> var1) {
         this.y = var1;
      }

      @Generated
      public void setDocuments(List<ServiceDocument> var1) {
         this.z = var1;
      }

      @Generated
      public void setUpdateDocuments(boolean var1) {
         this.A = var1;
      }

      @Generated
      public void setPartialProperties(List<EntityPropertyInput> var1) {
         this.C = var1;
      }

      @Generated
      public void setPropertiesSpecified(boolean var1) {
         this.D = var1;
      }

      @Generated
      public void setChecksum(String var1) {
         this.E = var1;
      }

      @Generated
      public void setSelector(L7ServiceDTO.L7ServiceSelector var1) {
         this.F = var1;
      }

      @Generated
      @Override
      public String toString() {
         String var10000 = String.valueOf(this.getExecutionContext());
         String var10001 = this.getGuid();
         String var10002 = this.getFolderPath();
         String var10003 = this.getName();
         String var10004 = this.getResolutionPath();
         String var10005 = String.valueOf(this.getResolvers());
         String var10006 = String.valueOf(this.getServiceType());
         String var10007 = String.valueOf(this.getPolicy());
         String var10008 = String.valueOf(this.getPolicyRevision());
         String var10009 = String.valueOf(this.getPolicyRevisions());
         Boolean var10010 = this.getEnabled();
         String var10011 = String.valueOf(this.getMethodsAllowed());
         Boolean var10012 = this.getTracingEnabled();
         Boolean var10013 = this.getWssProcessingEnabled();
         String var10014 = String.valueOf(this.getSoapVersion());
         Boolean var10015 = this.getLaxResolution();
         String var10016 = this.getWsdl();
         String var10017 = this.getWsdlUrl();
         String var10018 = String.valueOf(this.getWsdlResources());
         String var10019 = String.valueOf(this.getDocuments());
         boolean var10020 = this.isUpdateDocuments();
         String var10021 = String.valueOf(this.getProperties());
         String var10022 = String.valueOf(this.getPartialProperties());
         boolean var10023 = this.isPropertiesSpecified();
         String var1 = String.valueOf(this.getSelector());
         String var2 = this.getChecksum();
         boolean var3 = var10023;
         String var4 = var10022;
         String var5 = var10021;
         boolean var6 = var10020;
         String var7 = var10019;
         String var8 = var10018;
         String var9 = var10017;
         String var10 = var10016;
         Boolean var11 = var10015;
         String var12 = var10014;
         Boolean var13 = var10013;
         Boolean var14 = var10012;
         String var15 = var10011;
         Boolean var16 = var10010;
         String var17 = var10009;
         String var18 = var10008;
         String var19 = var10007;
         String var20 = var10006;
         String var21 = var10005;
         String var22 = var10004;
         String var23 = var10003;
         String var24 = var10002;
         String var25 = var10001;
         String var26 = var10000;
         String[] var27 = H;
         return var27[24]
            + var26
            + var27[29]
            + var25
            + var27[4]
            + var24
            + var27[26]
            + var23
            + var27[11]
            + var22
            + var27[6]
            + var21
            + var27[20]
            + var20
            + var27[27]
            + var19
            + var27[18]
            + var18
            + var27[31]
            + var17
            + var27[15]
            + var16
            + var27[23]
            + var15
            + var27[1]
            + var14
            + var27[3]
            + var13
            + var27[8]
            + var12
            + var27[28]
            + var11
            + var27[12]
            + var10
            + var27[2]
            + var9
            + var27[16]
            + var8
            + var27[21]
            + var7
            + var27[19]
            + var6
            + var27[9]
            + var5
            + var27[5]
            + var4
            + var27[14]
            + var3
            + var27[22]
            + var2
            + var27[17]
            + var1
            + ")";
      }

      @Generated
      @Override
      public boolean equals(Object var1) {
         if (var1 == this) {
            return true;
         } else if (!(var1 instanceof L7ServiceDTO.L7ServiceInput var2)) {
            return false;
         } else {
            if (!var2.canEqual(this)) {
               return false;
            }

            if (!super.equals(var1)) {
               return false;
            }

            if (this.isUpdateDocuments() != var2.isUpdateDocuments()) {
               return false;
            }

            if (this.isPropertiesSpecified() != var2.isPropertiesSpecified()) {
               return false;
            }

            Boolean var3 = this.getEnabled();
            Boolean var4 = var2.getEnabled();
            if (var3 == null ? var4 == null : var3.equals(var4)) {
               Boolean var5 = this.getTracingEnabled();
               Boolean var6 = var2.getTracingEnabled();
               if (var5 == null ? var6 == null : var5.equals(var6)) {
                  Boolean var7 = this.getWssProcessingEnabled();
                  Boolean var8 = var2.getWssProcessingEnabled();
                  if (var7 == null ? var8 == null : var7.equals(var8)) {
                     Boolean var9 = this.getLaxResolution();
                     Boolean var10 = var2.getLaxResolution();
                     if (var9 == null ? var10 == null : var9.equals(var10)) {
                        ResolverExecutionContext var11 = this.getExecutionContext();
                        ResolverExecutionContext var12 = var2.getExecutionContext();
                        if (var11 == null ? var12 == null : var11.equals(var12)) {
                           String var13 = this.getGuid();
                           String var14 = var2.getGuid();
                           if (var13 == null ? var14 == null : var13.equals(var14)) {
                              String var15 = this.getFolderPath();
                              String var16 = var2.getFolderPath();
                              if (var15 == null ? var16 == null : var15.equals(var16)) {
                                 String var17 = this.getName();
                                 String var18 = var2.getName();
                                 if (var17 == null ? var18 == null : var17.equals(var18)) {
                                    String var19 = this.getResolutionPath();
                                    String var20 = var2.getResolutionPath();
                                    if (var19 == null ? var20 == null : var19.equals(var20)) {
                                       L7ServiceDTO.ServiceResolversInput var21 = this.getResolvers();
                                       L7ServiceDTO.ServiceResolversInput var22 = var2.getResolvers();
                                       if (var21 == null ? var22 == null : var21.equals(var22)) {
                                          L7ServiceDTO.L7ServiceType var23 = this.getServiceType();
                                          L7ServiceDTO.L7ServiceType var24 = var2.getServiceType();
                                          if (var23 == null ? var24 == null : var23.equals(var24)) {
                                             PolicyInput var25 = this.getPolicy();
                                             PolicyInput var26 = var2.getPolicy();
                                             if (var25 == null ? var26 == null : var25.equals(var26)) {
                                                PolicyRevisionDTO.PolicyRevisionInput var27 = this.getPolicyRevision();
                                                PolicyRevisionDTO.PolicyRevisionInput var28 = var2.getPolicyRevision();
                                                if (var27 == null ? var28 == null : var27.equals(var28)) {
                                                   List var29 = this.getPolicyRevisions();
                                                   List var30 = var2.getPolicyRevisions();
                                                   if (var29 == null ? var30 == null : var29.equals(var30)) {
                                                      List var31 = this.getMethodsAllowed();
                                                      List var32 = var2.getMethodsAllowed();
                                                      if (var31 == null ? var32 == null : var31.equals(var32)) {
                                                         SoapVersion var33 = this.getSoapVersion();
                                                         SoapVersion var34 = var2.getSoapVersion();
                                                         if (var33 == null ? var34 == null : var33.equals(var34)) {
                                                            String var35 = this.getWsdl();
                                                            String var36 = var2.getWsdl();
                                                            if (var35 == null ? var36 == null : var35.equals(var36)) {
                                                               String var37 = this.getWsdlUrl();
                                                               String var38 = var2.getWsdlUrl();
                                                               if (var37 == null ? var38 == null : var37.equals(var38)) {
                                                                  List var39 = this.getWsdlResources();
                                                                  List var40 = var2.getWsdlResources();
                                                                  if (var39 == null ? var40 == null : var39.equals(var40)) {
                                                                     List var41 = this.getDocuments();
                                                                     List var42 = var2.getDocuments();
                                                                     if (var41 == null ? var42 == null : var41.equals(var42)) {
                                                                        List var43 = this.getProperties();
                                                                        List var44 = var2.getProperties();
                                                                        if (var43 == null ? var44 == null : var43.equals(var44)) {
                                                                           List var45 = this.getPartialProperties();
                                                                           List var46 = var2.getPartialProperties();
                                                                           if (var45 == null ? var46 == null : var45.equals(var46)) {
                                                                              String var47 = this.getChecksum();
                                                                              String var48 = var2.getChecksum();
                                                                              if (var47 == null ? var48 == null : var47.equals(var48)) {
                                                                                 L7ServiceDTO.L7ServiceSelector var49 = this.getSelector();
                                                                                 L7ServiceDTO.L7ServiceSelector var50 = var2.getSelector();
                                                                                 return var49 == null ? var50 == null : var49.equals(var50);
                                                                              } else {
                                                                                 return false;
                                                                              }
                                                                           } else {
                                                                              return false;
                                                                           }
                                                                        } else {
                                                                           return false;
                                                                        }
                                                                     } else {
                                                                        return false;
                                                                     }
                                                                  } else {
                                                                     return false;
                                                                  }
                                                               } else {
                                                                  return false;
                                                               }
                                                            } else {
                                                               return false;
                                                            }
                                                         } else {
                                                            return false;
                                                         }
                                                      } else {
                                                         return false;
                                                      }
                                                   } else {
                                                      return false;
                                                   }
                                                } else {
                                                   return false;
                                                }
                                             } else {
                                                return false;
                                             }
                                          } else {
                                             return false;
                                          }
                                       } else {
                                          return false;
                                       }
                                    } else {
                                       return false;
                                    }
                                 } else {
                                    return false;
                                 }
                              } else {
                                 return false;
                              }
                           } else {
                              return false;
                           }
                        } else {
                           return false;
                        }
                     } else {
                        return false;
                     }
                  } else {
                     return false;
                  }
               } else {
                  return false;
               }
            } else {
               return false;
            }
         }
      }

      @Generated
      @Override
      protected boolean canEqual(Object var1) {
         return var1 instanceof L7ServiceDTO.L7ServiceInput;
      }

      @Generated
      @Override
      public int hashCode() {
         byte var1 = 59;
         int var2 = super.hashCode();
         var2 = var2 * 59 + (this.isUpdateDocuments() ? 79 : 97);
         var2 = var2 * 59 + (this.isPropertiesSpecified() ? 79 : 97);
         Boolean var3 = this.getEnabled();
         var2 = var2 * 59 + (var3 == null ? 43 : var3.hashCode());
         Boolean var4 = this.getTracingEnabled();
         var2 = var2 * 59 + (var4 == null ? 43 : var4.hashCode());
         Boolean var5 = this.getWssProcessingEnabled();
         var2 = var2 * 59 + (var5 == null ? 43 : var5.hashCode());
         Boolean var6 = this.getLaxResolution();
         var2 = var2 * 59 + (var6 == null ? 43 : var6.hashCode());
         ResolverExecutionContext var7 = this.getExecutionContext();
         var2 = var2 * 59 + (var7 == null ? 43 : var7.hashCode());
         String var8 = this.getGuid();
         var2 = var2 * 59 + (var8 == null ? 43 : var8.hashCode());
         String var9 = this.getFolderPath();
         var2 = var2 * 59 + (var9 == null ? 43 : var9.hashCode());
         String var10 = this.getName();
         var2 = var2 * 59 + (var10 == null ? 43 : var10.hashCode());
         String var11 = this.getResolutionPath();
         var2 = var2 * 59 + (var11 == null ? 43 : var11.hashCode());
         L7ServiceDTO.ServiceResolversInput var12 = this.getResolvers();
         var2 = var2 * 59 + (var12 == null ? 43 : var12.hashCode());
         L7ServiceDTO.L7ServiceType var13 = this.getServiceType();
         var2 = var2 * 59 + (var13 == null ? 43 : var13.hashCode());
         PolicyInput var14 = this.getPolicy();
         var2 = var2 * 59 + (var14 == null ? 43 : var14.hashCode());
         PolicyRevisionDTO.PolicyRevisionInput var15 = this.getPolicyRevision();
         var2 = var2 * 59 + (var15 == null ? 43 : var15.hashCode());
         List var16 = this.getPolicyRevisions();
         var2 = var2 * 59 + (var16 == null ? 43 : var16.hashCode());
         List var17 = this.getMethodsAllowed();
         var2 = var2 * 59 + (var17 == null ? 43 : var17.hashCode());
         SoapVersion var18 = this.getSoapVersion();
         var2 = var2 * 59 + (var18 == null ? 43 : var18.hashCode());
         String var19 = this.getWsdl();
         var2 = var2 * 59 + (var19 == null ? 43 : var19.hashCode());
         String var20 = this.getWsdlUrl();
         var2 = var2 * 59 + (var20 == null ? 43 : var20.hashCode());
         List var21 = this.getWsdlResources();
         var2 = var2 * 59 + (var21 == null ? 43 : var21.hashCode());
         List var22 = this.getDocuments();
         var2 = var2 * 59 + (var22 == null ? 43 : var22.hashCode());
         List var23 = this.getProperties();
         var2 = var2 * 59 + (var23 == null ? 43 : var23.hashCode());
         List var24 = this.getPartialProperties();
         var2 = var2 * 59 + (var24 == null ? 43 : var24.hashCode());
         String var25 = this.getChecksum();
         var2 = var2 * 59 + (var25 == null ? 43 : var25.hashCode());
         L7ServiceDTO.L7ServiceSelector var26 = this.getSelector();
         return var2 * 59 + (var26 == null ? 43 : var26.hashCode());
      }

      static {
         String[] var5 = new String[32];
         int var3 = 0;
         String var2 = "@\rAj\u0011\u000bB\\|@JWI\u0005m`@KRB\u0006\u0015\n\u000bB_}EEkU\u000e\u0015\u0017\u000bB_}RyLH\u0001M}R@P@'FoCE[C_\r\u000bBNaMM[U2IzI\u0014\u0014\u000bBXoS]WF\u000ex|NY[U\u0016AkR\u0014\f\u000bBZkRFRQ\u0007Z}\u001c\u000bT\rI~`JJN\rF}\u000e\u000bB[a@YhB\u0010[gNG\u0003\r\u000bBX|NY[U\u0016AkR\u0014\nT\rI~`JJN\rF\u0011\u000bBZkRFRR\u0016AaOy_S\n\u0015\u0007\u000bB_}EE\u0003\tU\u0007[aM_[U\u0011\u0016\u000bBX|NY[U\u0016AkRzNB\u0001AhHLZ\u001a\n\u000bBM`@KRB\u0006\u0015\u0010\u000bB_}EElB\u0011G{SJ[T_\u000b\u000bB[kML]S\rZ3\u0011\u000bBXaM@]^0MxHZWH\f\u0015\u0012\u000bB]~EHJB&GmTD[I\u0016[3\u000e\u000bB[kS_WD\u0007|wQL\u0003\f\u000bBLaB\\SB\f\\}\u001c\u000b\u000bBKfDJUT\u0017E3\u0011\u000bBEkUAQC\u0011ibMFIB\u0006\u0015-kU{kS_WD\u0007lZn\u0007r\u00101M|W@]B+F~T]\u0016B\u001aMmT]WH\fkaO][_\u0016\u0015\u0007E\u0003[kt[W\u0007\u000bBFoLL\u0003\t\u000bBXaM@]^_\u0010\u000bBDoY{[T\rD{U@QI_\u0007\u000bBO{HM\u0003";
         int var4 = "@\rAj\u0011\u000bB\\|@JWI\u0005m`@KRB\u0006\u0015\n\u000bB_}EEkU\u000e\u0015\u0017\u000bB_}RyLH\u0001M}R@P@'FoCE[C_\r\u000bBNaMM[U2IzI\u0014\u0014\u000bBXoS]WF\u000ex|NY[U\u0016AkR\u0014\f\u000bBZkRFRQ\u0007Z}\u001c\u000bT\rI~`JJN\rF}\u000e\u000bB[a@YhB\u0010[gNG\u0003\r\u000bBX|NY[U\u0016AkR\u0014\nT\rI~`JJN\rF\u0011\u000bBZkRFRR\u0016AaOy_S\n\u0015\u0007\u000bB_}EE\u0003\tU\u0007[aM_[U\u0011\u0016\u000bBX|NY[U\u0016AkRzNB\u0001AhHLZ\u001a\n\u000bBM`@KRB\u0006\u0015\u0010\u000bB_}EElB\u0011G{SJ[T_\u000b\u000bB[kML]S\rZ3\u0011\u000bBXaM@]^0MxHZWH\f\u0015\u0012\u000bB]~EHJB&GmTD[I\u0016[3\u000e\u000bB[kS_WD\u0007|wQL\u0003\f\u000bBLaB\\SB\f\\}\u001c\u000b\u000bBKfDJUT\u0017E3\u0011\u000bBEkUAQC\u0011ibMFIB\u0006\u0015-kU{kS_WD\u0007lZn\u0007r\u00101M|W@]B+F~T]\u0016B\u001aMmT]WH\fkaO][_\u0016\u0015\u0007E\u0003[kt[W\u0007\u000bBFoLL\u0003\t\u000bBXaM@]^_\u0010\u000bBDoY{[T\rD{U@QI_\u0007\u000bBO{HM\u0003"
            .length();
         char var1 = 4;
         int var7 = -1;

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

            while (true) {
               String var8 = b(var10000, b(var10001));
               switch (var10002) {
                  case 0:
                     var5[var3++] = var8;
                     if ((var7 += var1) >= var4) {
                        H = var5;
                        return;
                     }

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

                     var2 = "x2tZ\u0012:siP|qlo\u0001|Iykfy=j\u0002";
                     var4 = "x2tZ\u0012:siP|qlo\u0001|Iykfy=j\u0002".length();
                     var1 = 4;
                     var7 = -1;
               }

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

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

         return var10000;
      }

      private static String b(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 -> 93;
               case 1 -> 24;
               case 2 -> 82;
               case 3 -> 116;
               case 4 -> 91;
               case 5 -> 83;
               default -> 68;
            });
         }

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

   public static class L7ServicePayload extends EntityMutationPayload<L7ServiceDTO> {
      public L7ServiceDTO getService() {
         return (L7ServiceDTO)super.getItem();
      }
   }

   public static class L7ServiceSelector {
      private final L7ServiceDTO.L7ServiceType a;

      public L7ServiceSelector(L7ServiceDTO.L7ServiceType var1) {
         this.a = var1;
      }

      public boolean matches(PublishedService var1) {
         return this.a.isSoap() == var1.isSoap() && this.a.isInternal() == var1.isInternal();
      }
   }

   public enum L7ServiceType {
      WEB_API,
      SOAP,
      INTERNAL_WEB_API,
      INTERNAL_SOAP;

      private final boolean soap;
      private final boolean internal;

      L7ServiceType(boolean var3, boolean var4) {
         this.soap = var3;
         this.internal = var4;
      }

      public boolean isSoap() {
         return this.soap;
      }

      public boolean isInternal() {
         return this.internal;
      }

      // $VF: Failed to inline enum fields
      // 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!)
      static {
         String[] var0 = new String[4];
         int var4 = 0;
         String var3 = "\u001f\u001dSw\u0010\u001d4\u0004\u001b\u0017Px";
         int var5 = "\u001f\u001dSw\u0010\u001d4\u0004\u001b\u0017Px".length();
         char var2 = 7;
         int var7 = -1;

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

            while (true) {
               String var8 = a(var10000, a(var10001));
               switch (var10002) {
                  case 0:
                     var0[var4++] = var8;
                     if ((var7 += var2) >= var5) {
                        WEB_API = new L7ServiceDTO.L7ServiceType(false, false);
                        SOAP = new L7ServiceDTO.L7ServiceType(true, false);
                        INTERNAL_WEB_API = new L7ServiceDTO.L7ServiceType(false, true);
                        INTERNAL_SOAP = new L7ServiceDTO.L7ServiceType(true, true);
                        return;
                     }

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

                     var3 = "?({S==\u0002:9|Y.#\u0010?({S==\u0002:9xS-,\u0002&/";
                     var5 = "?({S==\u0002:9|Y.#\u0010?({S==\u0002:9xS-,\u0002&/".length();
                     var2 = '\r';
                     var7 = -1;
               }

               var10000 = 5;
               var10001 = var3.substring(++var7, var7 + var2);
               var10002 = 0;
            }
         }
      }

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

         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 -> 115;
               case 1 -> 99;
               case 2 -> 42;
               case 3 -> 19;
               case 4 -> 106;
               case 5 -> 118;
               default -> 70;
            });
         }

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

   @JsonIncludeProperties(
      {
            "name",
            "resolutionPath",
            "folderPath",
            "httpMethods",
            "hashablePolicyXml",
            "tracingEnabled",
            "rawProperties",
            "wssProcessingEnabled",
            "enabled",
            "laxResolution",
            "soapVersion",
            "wsdl",
            "wsdlUrl",
            "wsdlResources",
            "policyDisabled"
      }
   )
   @JsonPropertyOrder(
      {
            "name",
            "resolutionPath",
            "folderPath",
            "httpMethods",
            "hashablePolicyXml",
            "tracingEnabled",
            "rawProperties",
            "wssProcessingEnabled",
            "enabled",
            "laxResolution",
            "soapVersion",
            "wsdl",
            "wsdlUrl",
            "wsdlResources",
            "policyDisabled"
      }
   )
   public static final class L7ServiceWrapper extends L7ServiceDTO {
      private final AtomicReference<String> g = new AtomicReference<>(null);
      private static final String j;

      public L7ServiceWrapper(@NonNull PublishedService var1, PolicyVersion var2, ServiceDocumentHelper var3) {
         super(var1, var3);
         if (var1 == null) {
            throw new NullPointerException(j);
         }

         this.setPolicyVersion(var2);
      }

      public List<HttpMethod> getHttpMethods() {
         ArrayList var1 = new ArrayList(this.entity.getHttpMethodsReadOnly());
         Collections.sort(var1);
         return var1;
      }

      public Boolean isPolicyDisabled() {
         try {
            if (this.entity.getPolicy().isDisabled()) {
               return Boolean.TRUE;
            }
         } catch (NullPointerException var1) {
            throw a(var1);
         }

         return null;
      }

      public String getHashablePolicyXml() {
         AtomicReference var10000;
         Object var10001;
         String var10002;
         label16: {
            try {
               var10000 = this.g;
               var10001 = null;
               if (this.subEntity != null) {
                  var10002 = this.subEntity.getXml();
                  break label16;
               }
            } catch (NullPointerException var1) {
               throw a(var1);
            }

            var10002 = this.entity.getPolicy().getXml();
         }

         var10000.compareAndSet(var10001, Util.hashablePolicyXML(var10002));
         return this.g.get();
      }

      @JsonPropertyOrder(alphabetic = true)
      public List<EntityProperty> getRawProperties() {
         return super.getProperties();
      }

      @Override
      protected Object createWrapperObject() {
         return null;
      }

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

      static {
         String var10002 = c(68, c("[/IVZ#\\W2\u001dRO(\u0017[%\u001dQA4QP4QS\u000e8\tJaTL\u000e4\tR-"));
         byte var10001 = -1;
         j = var10002;
      }

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

         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 -> 122;
               case 1 -> 5;
               case 2 -> 121;
               case 3 -> 123;
               case 4 -> 106;
               case 5 -> 30;
               default -> 56;
            });
         }

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

   public static class L7ServicesPayload extends EntityMutationsPayload<L7ServiceDTO> {
      public List<L7ServiceDTO> getServices() {
         return super.getItems();
      }
   }

   public static class ServiceMappingInstructionInput extends BundleEntityMappingInput {
      private L7ServiceDTO.ServiceRefInput f;
      private static final String h;

      @Generated
      public L7ServiceDTO.ServiceRefInput getSource() {
         return this.f;
      }

      @Generated
      public void setSource(L7ServiceDTO.ServiceRefInput var1) {
         this.f = var1;
      }

      @Generated
      @Override
      public String toString() {
         return h + this.getSource() + ")";
      }

      @Generated
      @Override
      public boolean equals(Object var1) {
         if (var1 == this) {
            return true;
         } else if (!(var1 instanceof L7ServiceDTO.ServiceMappingInstructionInput var2)) {
            return false;
         } else {
            if (!var2.canEqual(this)) {
               return false;
            }

            L7ServiceDTO.ServiceRefInput var3 = this.getSource();
            L7ServiceDTO.ServiceRefInput var4 = var2.getSource();
            return var3 == null ? var4 == null : var3.equals(var4);
         }
      }

      @Generated
      @Override
      protected boolean canEqual(Object var1) {
         return var1 instanceof L7ServiceDTO.ServiceMappingInstructionInput;
      }

      @Generated
      @Override
      public int hashCode() {
         byte var1 = 59;
         byte var2 = 1;
         L7ServiceDTO.ServiceRefInput var3 = this.getSource();
         return var2 * 59 + (var3 == null ? 43 : var3.hashCode());
      }

      static {
         String var10002 = b(123, b("\u0004=M4gC\u0000+oZ\u0005Z\u001b:-xh8vP$)zn8{R &yj#`V\u001d!ep\u0018{E\u001c<\"m>`G\n-7"));
         byte var10001 = -1;
         h = var10002;
      }

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

         return var10000;
      }

      private static String b(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 -> 51;
               case 1 -> 113;
               case 2 -> 101;
               case 3 -> 42;
               case 4 -> 110;
               case 5 -> 78;
               default -> 18;
            });
         }

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

   public static class ServiceRefInput extends EntityRefInput {
      private String c;
      private String d;
      private L7ServiceDTO.L7ServiceType e;
      private L7ServiceDTO.ServiceResolversInput f;
      private static final String[] h;

      public String getNormalizedResolutionPath() {
         return h[0].equals(this.d) ? "" : this.d;
      }

      @Generated
      public String getName() {
         return this.c;
      }

      @Generated
      public String getResolutionPath() {
         return this.d;
      }

      @Generated
      public L7ServiceDTO.L7ServiceType getServiceType() {
         return this.e;
      }

      @Generated
      public L7ServiceDTO.ServiceResolversInput getResolvers() {
         return this.f;
      }

      @Generated
      public void setName(String var1) {
         this.c = var1;
      }

      @Generated
      public void setResolutionPath(String var1) {
         this.d = var1;
      }

      @Generated
      public void setServiceType(L7ServiceDTO.L7ServiceType var1) {
         this.e = var1;
      }

      @Generated
      public void setResolvers(L7ServiceDTO.ServiceResolversInput var1) {
         this.f = var1;
      }

      @Generated
      @Override
      public String toString() {
         String var10000 = this.getName();
         String var10001 = this.getResolutionPath();
         String var1 = String.valueOf(this.getResolvers());
         String var2 = String.valueOf(this.getServiceType());
         String var3 = var10001;
         String var4 = var10000;
         String[] var5 = h;
         return var5[3] + var4 + var5[2] + var3 + var5[4] + var2 + var5[1] + var1 + ")";
      }

      @Generated
      @Override
      public boolean equals(Object var1) {
         if (var1 == this) {
            return true;
         } else if (!(var1 instanceof L7ServiceDTO.ServiceRefInput var2)) {
            return false;
         } else {
            if (!var2.canEqual(this)) {
               return false;
            }

            if (!super.equals(var1)) {
               return false;
            }

            String var3 = this.getName();
            String var4 = var2.getName();
            if (var3 == null ? var4 == null : var3.equals(var4)) {
               String var5 = this.getResolutionPath();
               String var6 = var2.getResolutionPath();
               if (var5 == null ? var6 == null : var5.equals(var6)) {
                  L7ServiceDTO.L7ServiceType var7 = this.getServiceType();
                  L7ServiceDTO.L7ServiceType var8 = var2.getServiceType();
                  if (var7 == null ? var8 == null : var7.equals(var8)) {
                     L7ServiceDTO.ServiceResolversInput var9 = this.getResolvers();
                     L7ServiceDTO.ServiceResolversInput var10 = var2.getResolvers();
                     return var9 == null ? var10 == null : var9.equals(var10);
                  } else {
                     return false;
                  }
               } else {
                  return false;
               }
            } else {
               return false;
            }
         }
      }

      @Generated
      @Override
      protected boolean canEqual(Object var1) {
         return var1 instanceof L7ServiceDTO.ServiceRefInput;
      }

      @Generated
      @Override
      public int hashCode() {
         byte var1 = 59;
         int var2 = super.hashCode();
         String var3 = this.getName();
         var2 = var2 * 59 + (var3 == null ? 43 : var3.hashCode());
         String var4 = this.getResolutionPath();
         var2 = var2 * 59 + (var4 == null ? 43 : var4.hashCode());
         L7ServiceDTO.L7ServiceType var5 = this.getServiceType();
         var2 = var2 * 59 + (var5 == null ? 43 : var5.hashCode());
         L7ServiceDTO.ServiceResolversInput var6 = this.getResolvers();
         return var2 * 59 + (var6 == null ? 43 : var6.hashCode());
      }

      static {
         String[] var5 = new String[5];
         int var3 = 0;
         String var2 = "wD$-rQ,9G\ft\u0017%/.M/.R%9`\u0011t\u0017%/.M/-C>%3r\",_j";
         int var4 = "wD$-rQ,9G\ft\u0017%/.M/.R%9`\u0011t\u0017%/.M/-C>%3r\",_j".length();
         char var1 = '\t';
         int var7 = -1;

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

            while (true) {
               String var8 = b(var10000, b(var10001));
               switch (var10002) {
                  case 0:
                     var5[var3++] = var8;
                     if ((var7 += var1) >= var4) {
                        h = var5;
                        return;
                     }

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

                     var2 = "\u001c\b\f''\\\"3Z\u001b\u0016\u001a\u0004\u00185M)+6O\u00195Y\u0016,%_?xQ>/0\u0017\u000e|\u001f,''\\\"3Z\u000b;%Ov";
                     var4 = "\u001c\b\f''\\\"3Z\u001b\u0016\u001a\u0004\u00185M)+6O\u00195Y\u0016,%_?xQ>/0\u0017\u000e|\u001f,''\\\"3Z\u000b;%Ov".length();
                     var1 = '"';
                     var7 = -1;
               }

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

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

         return var10000;
      }

      private static String b(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 -> 12;
               case 1 -> 99;
               case 2 -> 3;
               case 3 -> 30;
               case 4 -> 9;
               case 5 -> 118;
               default -> 23;
            });
         }

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

   public static class ServiceResolversInput extends EntityInput {
      String g;
      List<String> h;
      String i;
      String j;
      private static final String[] k;

      public L7ServiceDTO.L7ServiceType getExpectedServiceType() {
         return !Util.isNotEmpty(this.getNormalizedSoapAction()) && !Util.isNotEmpty(this.getBaseUri())
            ? L7ServiceDTO.L7ServiceType.WEB_API
            : L7ServiceDTO.L7ServiceType.SOAP;
      }

      public String getNormalizedResolutionPath() {
         return k[3].equals(this.j) ? "" : this.j;
      }

      public String getNormalizedSoapAction() {
         if (Util.isNotEmpty(this.g)) {
            return this.g;
         } else {
            return Util.isNotEmpty(this.h) ? this.h.getFirst() : null;
         }
      }

      @Override
      public String toString() {
         String var10000 = this.j;
         String var1 = this.i;
         String var2 = this.getNormalizedSoapAction();
         String var3 = var10000;
         String[] var4 = k;
         return var4[2] + var3 + var4[0] + var2 + var4[7] + var1 + "]";
      }

      public static Map<String, Object> toMap(L7ServiceDTO.ServiceResolversInput var0) {
         HashMap var1 = new HashMap();
         String[] var2 = k;
         var1.put(var2[6], var0.getSoapAction());
         var1.put(var2[1], var0.getBaseUri());
         var1.put(var2[5], var0.getResolutionPath());
         var1.put(var2[11], var0.getSoapActions());
         return var1;
      }

      public static L7ServiceDTO.ServiceResolversInput fromMap(Object var0) {
         if (var0 instanceof Map var1) {
            L7ServiceDTO.ServiceResolversInput var2 = new L7ServiceDTO.ServiceResolversInput();
            String[] var3 = k;
            var2.setSoapAction(a(var1.get(var3[8])));
            var2.setBaseUri(a(var1.get(var3[9])));
            var2.setResolutionPath(a(var1.get(var3[4])));
            var2.setSoapActions(b(var1.get(var3[10])));
            return var2;
         } else {
            return null;
         }
      }

      private static String a(Object var0) {
         return var0 != null ? String.valueOf(var0) : null;
      }

      private static List<String> b(Object var0) {
         return var0 instanceof List var1 ? var1.stream().map(L7ServiceDTO.ServiceResolversInput::a).toList() : null;
      }

      @Generated
      public String getSoapAction() {
         return this.g;
      }

      @Generated
      public List<String> getSoapActions() {
         return this.h;
      }

      @Generated
      public String getBaseUri() {
         return this.i;
      }

      @Generated
      public String getResolutionPath() {
         return this.j;
      }

      @Generated
      public void setSoapAction(String var1) {
         this.g = var1;
      }

      @Generated
      public void setSoapActions(List<String> var1) {
         this.h = var1;
      }

      @Generated
      public void setBaseUri(String var1) {
         this.i = var1;
      }

      @Generated
      public void setResolutionPath(String var1) {
         this.j = var1;
      }

      @Generated
      @Override
      public boolean equals(Object var1) {
         if (var1 == this) {
            return true;
         } else if (!(var1 instanceof L7ServiceDTO.ServiceResolversInput var2)) {
            return false;
         } else {
            if (!var2.canEqual(this)) {
               return false;
            }

            if (!super.equals(var1)) {
               return false;
            }

            String var3 = this.getSoapAction();
            String var4 = var2.getSoapAction();
            if (var3 == null ? var4 == null : var3.equals(var4)) {
               List var5 = this.getSoapActions();
               List var6 = var2.getSoapActions();
               if (var5 == null ? var6 == null : var5.equals(var6)) {
                  String var7 = this.getBaseUri();
                  String var8 = var2.getBaseUri();
                  if (var7 == null ? var8 == null : var7.equals(var8)) {
                     String var9 = this.getResolutionPath();
                     String var10 = var2.getResolutionPath();
                     return var9 == null ? var10 == null : var9.equals(var10);
                  } else {
                     return false;
                  }
               } else {
                  return false;
               }
            } else {
               return false;
            }
         }
      }

      @Generated
      @Override
      protected boolean canEqual(Object var1) {
         return var1 instanceof L7ServiceDTO.ServiceResolversInput;
      }

      @Generated
      @Override
      public int hashCode() {
         byte var1 = 59;
         int var2 = super.hashCode();
         String var3 = this.getSoapAction();
         var2 = var2 * 59 + (var3 == null ? 43 : var3.hashCode());
         List var4 = this.getSoapActions();
         var2 = var2 * 59 + (var4 == null ? 43 : var4.hashCode());
         String var5 = this.getBaseUri();
         var2 = var2 * 59 + (var5 == null ? 43 : var5.hashCode());
         String var6 = this.getResolutionPath();
         return var2 * 59 + (var6 == null ? 43 : var6.hashCode());
      }

      static {
         String[] var5 = new String[12];
         int var3 = 0;
         String var2 = "WyQ|\u000ele\u0018-K|\u0001!\u0007\u00198Qv:nM\u0010 +G`\u0000pQ\u000f0M}?}P\u0013d\tT*Qt@oK\u001a)\u000e\t<Q|\u0003iP\u00126LC\u000ehL\u000e\t<Q|\u0003iP\u00126LC\u000ehL\n\b6Cc.\u007fP\u00126L\nWy@r\u001cyq\t0\u001f\n\b6Cc.\u007fP\u00126L\u0007\u00198Qv:nM";
         int var4 = "WyQ|\u000ele\u0018-K|\u0001!\u0007\u00198Qv:nM\u0010 +G`\u0000pQ\u000f0M}?}P\u0013d\tT*Qt@oK\u001a)\u000e\t<Q|\u0003iP\u00126LC\u000ehL\u000e\t<Q|\u0003iP\u00126LC\u000ehL\n\b6Cc.\u007fP\u00126L\nWy@r\u001cyq\t0\u001f\n\b6Cc.\u007fP\u00126L\u0007\u00198Qv:nM"
            .length();
         char var1 = '\r';
         int var7 = -1;

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

            while (true) {
               String var8 = b(var10000, b(var10001));
               switch (var10002) {
                  case 0:
                     var5[var3++] = var8;
                     if ((var7 += var1) >= var4) {
                        k = var5;
                        return;
                     }

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

                     var2 = "\n4Aa,}R\u00104Nb\u000b\n4Aa,}R\u00104Nb";
                     var4 = "\n4Aa,}R\u00104Nb\u000b\n4Aa,}R\u00104Nb".length();
                     var1 = 11;
                     var7 = -1;
               }

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

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

         return var10000;
      }

      private static String b(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 -> 112;
               case 1 -> 82;
               case 2 -> 41;
               case 3 -> 24;
               case 4 -> 100;
               case 5 -> 23;
               default -> 47;
            });
         }

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