package com.l7tech.security.token;

import com.l7tech.common.io.XmlUtil;
import com.l7tech.util.Charsets;
import com.l7tech.util.ConfigFactory;
import com.l7tech.util.DomUtils;
import com.l7tech.util.HexUtils;
import com.l7tech.util.ISO8601Date;
import com.l7tech.util.InvalidDocumentFormatException;
import com.l7tech.util.SoapConstants;
import com.l7tech.xml.UnsupportedDocumentFormatException;
import com.l7tech.xml.soap.SoapUtil;
import java.net.PasswordAuthentication;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Date;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Text;

public class UsernameTokenImpl implements UsernameToken {
   public static final String PROP_TRIM_USERNAME;
   public static final String PROP_TRIM_PASSWORD;
   private Element a;
   private String b;
   private PasswordAuthentication c;
   private String d;
   private String e;
   private String f;
   private String g;
   private boolean h;
   private static final String[] i;

   public UsernameTokenImpl(PasswordAuthentication var1) {
      this.a = null;
      this.e = null;
      this.b = var1.getUserName();
      this.c = var1;
   }

   public UsernameTokenImpl(String var1, char[] var2) {
      this(var1, var2, null, null, false);
   }

   public UsernameTokenImpl(String var1, char[] var2, String var3, byte[] var4, boolean var5) {
      if (var1 == null) {
         throw new IllegalArgumentException(i[18]);
      }

      UsernameTokenImpl var10000;
      PasswordAuthentication var10001;
      label31: {
         try {
            this.a = null;
            this.e = null;
            this.b = var1;
            var10000 = this;
            if (var2 == null) {
               var10001 = null;
               break label31;
            }
         } catch (IllegalArgumentException var7) {
            throw a(var7);
         }

         var10001 = new PasswordAuthentication(var1, var2);
      }

      label24: {
         try {
            var10000.c = var10001;
            this.g = var3;
            var10000 = this;
            if (var4 == null) {
               var9 = null;
               break label24;
            }
         } catch (IllegalArgumentException var6) {
            throw a(var6);
         }

         var9 = HexUtils.encodeBase64(var4);
      }

      var10000.f = var9;
      this.h = var5;
   }

   public UsernameTokenImpl(Element var1) throws InvalidDocumentFormatException, UnsupportedDocumentFormatException {
      String var2 = var1.getNamespaceURI();
      String var3 = a(var1, var2);
      this.g = a(var1);
      this.f = c(var1, var2);
      this.a = var1;
      this.b = var3;
      this.e = null;
      this.b(var1, var2);
   }

   private static String a(Element var0, String var1) throws InvalidDocumentFormatException, UnsupportedDocumentFormatException {
      Element var2 = DomUtils.findOnlyOneChildElementByName(var0, var1, SoapConstants.UNTOK_USERNAME_EL_NAME);

      try {
         if (var2 == null) {
            throw new InvalidDocumentFormatException(i[14]);
         }
      } catch (InvalidDocumentFormatException var5) {
         throw a(var5);
      }

      String var3 = DomUtils.getTextValue(var2, false);
      if (a()) {
         var3 = var3.trim();
      }

      try {
         if (var3.length() < 1) {
            throw new UnsupportedDocumentFormatException(i[13]);
         } else {
            return var3;
         }
      } catch (InvalidDocumentFormatException var4) {
         throw a(var4);
      }
   }

   private static boolean a() {
      return ConfigFactory.getBooleanProperty(i[25], false);
   }

   private void b(Element param1, String param2) throws InvalidDocumentFormatException, UnsupportedDocumentFormatException {
      // $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 0
      // 01: aconst_null
      // 02: putfield com/l7tech/security/token/UsernameTokenImpl.c Ljava/net/PasswordAuthentication;
      // 05: aload 0
      // 06: aconst_null
      // 07: putfield com/l7tech/security/token/UsernameTokenImpl.d Ljava/lang/String;
      // 0a: aload 0
      // 0b: bipush 0
      // 0c: putfield com/l7tech/security/token/UsernameTokenImpl.h Z
      // 0f: aload 1
      // 10: aload 2
      // 11: getstatic com/l7tech/util/SoapConstants.UNTOK_PASSWORD_EL_NAME Ljava/lang/String;
      // 14: invokestatic com/l7tech/util/DomUtils.findOnlyOneChildElementByName (Lorg/w3c/dom/Element;Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
      // 17: astore 3
      // 18: aload 3
      // 19: ifnonnull 21
      // 1c: return
      // 1d: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 20: athrow
      // 21: aload 3
      // 22: bipush 0
      // 23: invokestatic com/l7tech/util/DomUtils.getTextValue (Lorg/w3c/dom/Element;Z)Ljava/lang/String;
      // 26: astore 4
      // 28: aload 0
      // 29: invokevirtual com/l7tech/security/token/UsernameTokenImpl.b ()Z
      // 2c: ifeq 36
      // 2f: aload 4
      // 31: invokevirtual java/lang/String.trim ()Ljava/lang/String;
      // 34: astore 4
      // 36: aload 4
      // 38: invokevirtual java/lang/String.length ()I
      // 3b: bipush 1
      // 3c: if_icmpge 50
      // 3f: new com/l7tech/util/InvalidDocumentFormatException
      // 42: dup
      // 43: getstatic com/l7tech/security/token/UsernameTokenImpl.i [Ljava/lang/String;
      // 46: bipush 0
      // 47: aaload
      // 48: invokespecial com/l7tech/util/InvalidDocumentFormatException.<init> (Ljava/lang/String;)V
      // 4b: athrow
      // 4c: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 4f: athrow
      // 50: aload 3
      // 51: getstatic com/l7tech/util/SoapConstants.UNTOK_PSSWD_TYPE_ATTR_NAME Ljava/lang/String;
      // 54: invokeinterface org/w3c/dom/Element.getAttribute (Ljava/lang/String;)Ljava/lang/String; 2
      // 59: invokevirtual java/lang/String.trim ()Ljava/lang/String;
      // 5c: astore 5
      // 5e: aload 5
      // 60: ifnull 88
      // 63: aload 5
      // 65: invokevirtual java/lang/String.length ()I
      // 68: bipush 1
      // 69: if_icmplt 88
      // 6c: goto 73
      // 6f: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 72: athrow
      // 73: aload 5
      // 75: getstatic com/l7tech/security/token/UsernameTokenImpl.i [Ljava/lang/String;
      // 78: bipush 27
      // 7a: aaload
      // 7b: invokevirtual java/lang/String.endsWith (Ljava/lang/String;)Z
      // 7e: ifeq a1
      // 81: goto 88
      // 84: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 87: athrow
      // 88: aload 0
      // 89: new java/net/PasswordAuthentication
      // 8c: dup
      // 8d: aload 0
      // 8e: getfield com/l7tech/security/token/UsernameTokenImpl.b Ljava/lang/String;
      // 91: aload 4
      // 93: invokevirtual java/lang/String.toCharArray ()[C
      // 96: invokespecial java/net/PasswordAuthentication.<init> (Ljava/lang/String;[C)V
      // 99: putfield com/l7tech/security/token/UsernameTokenImpl.c Ljava/net/PasswordAuthentication;
      // 9c: return
      // 9d: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // a0: athrow
      // a1: aload 5
      // a3: getstatic com/l7tech/security/token/UsernameTokenImpl.i [Ljava/lang/String;
      // a6: bipush 10
      // a8: aaload
      // a9: invokevirtual java/lang/String.endsWith (Ljava/lang/String;)Z
      // ac: ifeq bf
      // af: aload 0
      // b0: aload 4
      // b2: putfield com/l7tech/security/token/UsernameTokenImpl.d Ljava/lang/String;
      // b5: aload 0
      // b6: bipush 1
      // b7: putfield com/l7tech/security/token/UsernameTokenImpl.h Z
      // ba: return
      // bb: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // be: athrow
      // bf: new com/l7tech/xml/UnsupportedDocumentFormatException
      // c2: dup
      // c3: aload 5
      // c5: getstatic com/l7tech/security/token/UsernameTokenImpl.i [Ljava/lang/String;
      // c8: bipush 24
      // ca: aaload
      // cb: swap
      // cc: 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" ]
      // d1: invokespecial com/l7tech/xml/UnsupportedDocumentFormatException.<init> (Ljava/lang/String;)V
      // d4: athrow
      // try (14 -> 17): 17 com/l7tech/util/InvalidDocumentFormatException
      // try (29 -> 40): 40 com/l7tech/util/InvalidDocumentFormatException
      // try (47 -> 53): 54 com/l7tech/util/InvalidDocumentFormatException
      // try (49 -> 62): 63 com/l7tech/util/InvalidDocumentFormatException
      // try (56 -> 75): 75 com/l7tech/util/InvalidDocumentFormatException
      // try (77 -> 90): 90 com/l7tech/util/InvalidDocumentFormatException
   }

   private boolean b() {
      return ConfigFactory.getBooleanProperty(i[22], false);
   }

   private static String a(Element var0) throws InvalidDocumentFormatException {
      return a(var0, SoapConstants.WSU_URIS_ARRAY, SoapConstants.UNTOK_CREATED_EL_NAME);
   }

   private static String c(Element var0, String var1) throws InvalidDocumentFormatException {
      return a(var0, new String[]{var1}, SoapConstants.UNTOK_NONCE_EL_NAME);
   }

   private static String a(Element var0, String[] var1, String var2) throws InvalidDocumentFormatException {
      Element var3 = DomUtils.findOnlyOneChildElementByName(var0, var1, var2);

      try {
         if (var3 == null) {
            return null;
         }
      } catch (InvalidDocumentFormatException var6) {
         throw a(var6);
      }

      String var4 = DomUtils.getTextValue(var3);

      try {
         if (var4.length() < 1) {
            throw new InvalidDocumentFormatException(i[9] + var2 + i[20]);
         } else {
            return var4;
         }
      } catch (InvalidDocumentFormatException var5) {
         throw a(var5);
      }
   }

   @Override
   public String getNonce() {
      return this.f;
   }

   @Override
   public String getCreated() {
      return this.g;
   }

   @Override
   public boolean isDigest() {
      return this.h;
   }

   @Override
   public String getUsername() {
      return this.b;
   }

   @Override
   public SecurityTokenType getType() {
      return SecurityTokenType.WSS_USERNAME;
   }

   @Override
   public String getElementId() {
      try {
         if (this.e != null) {
            return this.e;
         }
      } catch (InvalidDocumentFormatException var3) {
         throw a(var3);
      }

      try {
         return this.e = SoapUtil.getElementWsuId(this.asElement());
      } catch (InvalidDocumentFormatException var2) {
         throw new IllegalStateException(var2);
      }
   }

   public void fillInDetails(Element var1, String var2) {
      Document var3 = var1.getOwnerDocument();
      String var4 = var1.getNamespaceURI();
      String[] var10 = i;
      Element var5 = var3.createElementNS(var4, var10[16]);
      var5.setPrefix(var1.getPrefix());
      var1.appendChild(var5);
      Text var6 = DomUtils.createTextNode(var3, this.b);

      try {
         var5.appendChild(var6);
         if (this.g == null) {
            this.g = ISO8601Date.format(new Date());
         }
      } catch (IllegalArgumentException var12) {
         throw a(var12);
      }

      var10 = i;
      String var7 = var10[21];
      String var8 = null;
      if (this.h) {
         var8 = this.getPasswordDigest();
         var7 = var10[23];
      } else if (this.c != null) {
         var8 = new String(this.c.getPassword());
      }

      if (var8 != null) {
         var10 = i;
         Element var9 = var3.createElementNS(var4, var10[8]);
         var9.setPrefix(var1.getPrefix());
         var1.appendChild(var9);
         var6 = DomUtils.createTextNode(var3, var8);
         var9.appendChild(var6);
         var9.setAttribute(var10[11], var7);
      }

      if (this.f != null) {
         var10 = i;
         Element var14 = var3.createElementNS(var4, var10[15]);
         var14.setPrefix(var1.getPrefix());
         var14.appendChild(DomUtils.createTextNode(var1, this.f));
         var14.setAttribute(var10[26], SoapUtil.ENCODINGTYPE_BASE64BINARY);
         var1.appendChild(var14);
      }

      Element var15;
      label39: {
         label38: {
            try {
               if (this.g.isEmpty()) {
                  return;
               }

               if (var2 != null) {
                  break label38;
               }
            } catch (IllegalArgumentException var11) {
               throw a(var11);
            }

            var10 = i;
            var15 = DomUtils.createAndAppendElementNS(var1, var10[4], SoapConstants.WSU_NAMESPACE, var10[7]);
            break label39;
         }

         var10 = i;
         var15 = var3.createElementNS(SoapConstants.WSU_NAMESPACE, var10[5]);
         var15.setPrefix(var2);
         var1.appendChild(var15);
      }

      var15.appendChild(DomUtils.createTextNode(var1, this.g));
   }

   @Override
   public String getPasswordDigest() {
      try {
         if (this.d != null) {
            return this.d;
         }
      } catch (IllegalArgumentException var1) {
         throw a(var1);
      }

      try {
         if (this.c == null) {
            return null;
         }
      } catch (IllegalArgumentException var2) {
         throw a(var2);
      }

      this.d = createPasswordDigest(this.c.getPassword(), this.g, this.f);
      return this.d;
   }

   public static String createPasswordDigest(char[] var0, String var1, String var2) {
      try {
         if (var0 == null) {
            return null;
         }
      } catch (NoSuchAlgorithmException var7) {
         throw a(var7);
      }

      try {
         MessageDigest var3 = MessageDigest.getInstance(i[17]);

         try {
            if (var2 != null) {
               var3.update(HexUtils.decodeBase64(var2, true));
            }
         } catch (NoSuchAlgorithmException var4) {
            throw a(var4);
         }

         try {
            if (var1 != null) {
               var3.update(var1.getBytes(Charsets.UTF8));
            }
         } catch (NoSuchAlgorithmException var5) {
            throw a(var5);
         }

         var3.update(new String(var0).getBytes(Charsets.UTF8));
         return HexUtils.encodeBase64(var3.digest());
      } catch (NoSuchAlgorithmException var6) {
         throw new RuntimeException(var6);
      }
   }

   @Override
   public Element asElement(Element param1, String 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: aload 1
      // 01: invokeinterface org/w3c/dom/Element.getOwnerDocument ()Lorg/w3c/dom/Document; 1
      // 06: astore 4
      // 08: aload 0
      // 09: getfield com/l7tech/security/token/UsernameTokenImpl.a Lorg/w3c/dom/Element;
      // 0c: ifnull 68
      // 0f: aload 2
      // 10: ifnull 31
      // 13: goto 1a
      // 16: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 19: athrow
      // 1a: aload 2
      // 1b: aload 0
      // 1c: getfield com/l7tech/security/token/UsernameTokenImpl.a Lorg/w3c/dom/Element;
      // 1f: invokeinterface org/w3c/dom/Element.getNamespaceURI ()Ljava/lang/String; 1
      // 24: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 27: ifeq 68
      // 2a: goto 31
      // 2d: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 30: athrow
      // 31: aload 0
      // 32: getfield com/l7tech/security/token/UsernameTokenImpl.a Lorg/w3c/dom/Element;
      // 35: invokeinterface org/w3c/dom/Element.getOwnerDocument ()Lorg/w3c/dom/Document; 1
      // 3a: aload 4
      // 3c: if_acmpne 4f
      // 3f: goto 46
      // 42: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 45: athrow
      // 46: aload 0
      // 47: getfield com/l7tech/security/token/UsernameTokenImpl.a Lorg/w3c/dom/Element;
      // 4a: areturn
      // 4b: invokestatic com/l7tech/security/token/UsernameTokenImpl.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 4e: athrow
      // 4f: aload 4
      // 51: aload 0
      // 52: getfield com/l7tech/security/token/UsernameTokenImpl.a Lorg/w3c/dom/Element;
      // 55: bipush 1
      // 56: invokeinterface org/w3c/dom/Document.importNode (Lorg/w3c/dom/Node;Z)Lorg/w3c/dom/Node; 3
      // 5b: checkcast org/w3c/dom/Element
      // 5e: astore 5
      // 60: aload 0
      // 61: aload 5
      // 63: dup_x1
      // 64: putfield com/l7tech/security/token/UsernameTokenImpl.a Lorg/w3c/dom/Element;
      // 67: areturn
      // 68: aload 4
      // 6a: aload 2
      // 6b: getstatic com/l7tech/security/token/UsernameTokenImpl.i [Ljava/lang/String;
      // 6e: bipush 12
      // 70: aaload
      // 71: invokeinterface org/w3c/dom/Document.createElementNS (Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element; 3
      // 76: astore 5
      // 78: aload 5
      // 7a: aload 3
      // 7b: invokeinterface org/w3c/dom/Element.setPrefix (Ljava/lang/String;)V 2
      // 80: aload 0
      // 81: aload 5
      // 83: aload 1
      // 84: getstatic com/l7tech/util/SoapConstants.WSU_NAMESPACE Ljava/lang/String;
      // 87: invokestatic com/l7tech/common/io/XmlUtil.findActivePrefixForNamespace (Lorg/w3c/dom/Node;Ljava/lang/String;)Ljava/lang/String;
      // 8a: invokevirtual com/l7tech/security/token/UsernameTokenImpl.fillInDetails (Lorg/w3c/dom/Element;Ljava/lang/String;)V
      // 8d: aload 0
      // 8e: aload 5
      // 90: dup_x1
      // 91: putfield com/l7tech/security/token/UsernameTokenImpl.a Lorg/w3c/dom/Element;
      // 94: areturn
      // try (3 -> 8): 9 java/lang/IllegalArgumentException
      // try (6 -> 17): 18 java/lang/IllegalArgumentException
      // try (11 -> 25): 26 java/lang/IllegalArgumentException
      // try (20 -> 31): 31 java/lang/IllegalArgumentException
   }

   @Override
   public Element asElement() {
      if (this.a == null) {
         String[] var3 = i;
         Document var1 = XmlUtil.createEmptyDocument(var3[6], var3[3], SoapConstants.SECURITY_NAMESPACE);
         Element var2 = var1.getDocumentElement();
         this.fillInDetails(var2, null);
         this.a = var2;
      }

      return this.a;
   }

   @Override
   public String toString() {
      return i[19] + this.b;
   }

   @Override
   public char[] getPassword() {
      try {
         if (this.c == null) {
            return null;
         }
      } catch (IllegalArgumentException var1) {
         throw a(var1);
      }

      return this.c.getPassword();
   }

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

   static {
      String[] var5 = new String[28];
      int var3 = 0;
      String var2 = "A?=Q?v\u0010g99\u001c/q\u001a~26Q\"d\u0006566Q/h\u0005a.x\u0001+v\u0006b8*\u0015j`\u0019p:=\u001f>4v85_&2\u0001p40_9`\u0016`%1\u00053+\u0001z<=\u001fdP\u0006p%6\u0010'`!z<=\u001fdq\u0007|:\r\u0002/w\u001bt:=4v85_&2\u0001p40_9`\u0016`%1\u00053+\u0001z<=\u001fdP\u0006p%6\u0010'`!z<=\u001fdq\u0007|:\b\u00109v\u0002z%<\u0004b$+\u0014\u0007V%=\u0010>`\u0011\u0007V%=\u0010>`\u0011\r@$=\u0003$d\u0018p\u00037\u001a/k\u0003b$-\bE6+\u0002=j\u0007q\u0019W6<Q\u001fv\u0010g99\u001c/Q\u001a~26Kj`\u0018e#!Q\u000eE6+\u0002=j\u0007q\u00131\u0016/v\u0001\u0004A.(\u0014\r@$=\u0003$d\u0018p\u00037\u001a/k/A?=Q?v\u0010g99\u001c/q\u001a~26Q\"d\u0006566Q/h\u0005a.x\u00049`\u0007{65\u0014j`\u0019p:=\u001f>=A?=Q?v\u0010g99\u001c/q\u001a~26Q/i\u0010x26\u0005ja\u001ap$x\u001f%qUv86\u0005+l\u001b56x\u00049`\u0007{65\u0014j`\u0019p:=\u001f>\u0005[86\u0012/\b@$=\u0003$d\u0018p\u0005F\u001f\u0019\\{0Tw-\u0002/w\u001bt:=Q#vUg2)\u0004#w\u0010qw,\u001ejf\u0007p6,\u0014jdU@$=\u0003$d\u0018p\u00037\u001a/k\u000f@$=\u0003$d\u0018p\u00037\u001a/kO5\b524\u0014'`\u001ba_}#,\u0001p*Zq8;\u0002dj\u0014f>+\\%u\u0010{y7\u0003-*\u0002f$wCz5A:gi^%d\u0006|$uCz5A%fu\u00069vX`$=\u0003$d\u0018pz,\u001e!`\u001b8'*\u001e,l\u0019pzi_z&%t$+\u0006%w\u0011A2 \u00054v85_&2\u0001p40_9`\u0016`%1\u00053+\u0001z<=\u001fdP\u0006p%6\u0010'`!z<=\u001fdq\u0007|:\b\u00109v\u0002z%<a}#,\u0001p*Zq8;\u0002dj\u0014f>+\\%u\u0010{y7\u0003-*\u0002f$wCz5A:gi^%d\u0006|$uCz5A%fu\u00069vX`$=\u0003$d\u0018pz,\u001e!`\u001b8'*\u001e,l\u0019pzi_z&%t$+\u0006%w\u0011Q>?\u00149q4A?1\u0002jp\u0006p%6\u0010'`Ua83\u0014$%\u0005t$+\u0006%w\u00115#!\u0001/%\u001cfw6\u001e>%\u0006`'(\u001e8q\u0010qmx4v85_&2\u0001p40_9`\u0016`%1\u00053+\u0001z<=\u001fdP\u0006p%6\u0010'`!z<=\u001fdq\u0007|:\r\u0002/w\u001bt:=";
      int var4 = "A?=Q?v\u0010g99\u001c/q\u001a~26Q\"d\u0006566Q/h\u0005a.x\u0001+v\u0006b8*\u0015j`\u0019p:=\u001f>4v85_&2\u0001p40_9`\u0016`%1\u00053+\u0001z<=\u001fdP\u0006p%6\u0010'`!z<=\u001fdq\u0007|:\r\u0002/w\u001bt:=4v85_&2\u0001p40_9`\u0016`%1\u00053+\u0001z<=\u001fdP\u0006p%6\u0010'`!z<=\u001fdq\u0007|:\b\u00109v\u0002z%<\u0004b$+\u0014\u0007V%=\u0010>`\u0011\u0007V%=\u0010>`\u0011\r@$=\u0003$d\u0018p\u00037\u001a/k\u0003b$-\bE6+\u0002=j\u0007q\u0019W6<Q\u001fv\u0010g99\u001c/Q\u001a~26Kj`\u0018e#!Q\u000eE6+\u0002=j\u0007q\u00131\u0016/v\u0001\u0004A.(\u0014\r@$=\u0003$d\u0018p\u00037\u001a/k/A?=Q?v\u0010g99\u001c/q\u001a~26Q\"d\u0006566Q/h\u0005a.x\u00049`\u0007{65\u0014j`\u0019p:=\u001f>=A?=Q?v\u0010g99\u001c/q\u001a~26Q/i\u0010x26\u0005ja\u001ap$x\u001f%qUv86\u0005+l\u001b56x\u00049`\u0007{65\u0014j`\u0019p:=\u001f>\u0005[86\u0012/\b@$=\u0003$d\u0018p\u0005F\u001f\u0019\\{0Tw-\u0002/w\u001bt:=Q#vUg2)\u0004#w\u0010qw,\u001ejf\u0007p6,\u0014jdU@$=\u0003$d\u0018p\u00037\u001a/k\u000f@$=\u0003$d\u0018p\u00037\u001a/kO5\b524\u0014'`\u001ba_}#,\u0001p*Zq8;\u0002dj\u0014f>+\\%u\u0010{y7\u0003-*\u0002f$wCz5A:gi^%d\u0006|$uCz5A%fu\u00069vX`$=\u0003$d\u0018pz,\u001e!`\u001b8'*\u001e,l\u0019pzi_z&%t$+\u0006%w\u0011A2 \u00054v85_&2\u0001p40_9`\u0016`%1\u00053+\u0001z<=\u001fdP\u0006p%6\u0010'`!z<=\u001fdq\u0007|:\b\u00109v\u0002z%<a}#,\u0001p*Zq8;\u0002dj\u0014f>+\\%u\u0010{y7\u0003-*\u0002f$wCz5A:gi^%d\u0006|$uCz5A%fu\u00069vX`$=\u0003$d\u0018pz,\u001e!`\u001b8'*\u001e,l\u0019pzi_z&%t$+\u0006%w\u0011Q>?\u00149q4A?1\u0002jp\u0006p%6\u0010'`Ua83\u0014$%\u0005t$+\u0006%w\u00115#!\u0001/%\u001cfw6\u001e>%\u0006`'(\u001e8q\u0010qmx4v85_&2\u0001p40_9`\u0016`%1\u00053+\u0001z<=\u001fdP\u0006p%6\u0010'`!z<=\u001fdq\u0007|:\r\u0002/w\u001bt:="
         .length();
      char var1 = '/';
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 56;
         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) {
                     i = var5;
                     String[] var9 = i;
                     PROP_TRIM_PASSWORD = i[2];
                     PROP_TRIM_USERNAME = var9[1];
                     return;
                  }

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

                  var2 = "6_]xH\n}\u0014eGgI\f#PMd[\fa\u0017e[oX";
                  var4 = "6_]xH\n}\u0014eGgI\f#PMd[\fa\u0017e[oX".length();
                  var1 = '\f';
                  var7 = -1;
            }

            var10000 = 94;
            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] ^ 77);
      }

      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 -> 45;
            case 1 -> 111;
            case 2 -> 96;
            case 3 -> 73;
            case 4 -> 114;
            case 5 -> 61;
            default -> 77;
         });
      }

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