public final class org.eclipse.jgit.lib.Constants
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.eclipse.jgit.lib.Constants
  super_class: java.lang.Object
{
  private static final java.lang.String HASH_FUNCTION;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "SHA-1"

  public static final int OBJECT_ID_LENGTH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 20

  public static final int OBJECT_ID_STRING_LENGTH;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 40

  public static final java.lang.String HEAD;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "HEAD"

  public static final java.lang.String FETCH_HEAD;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "FETCH_HEAD"

  public static final java.lang.String TYPE_COMMIT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "commit"

  public static final java.lang.String TYPE_BLOB;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "blob"

  public static final java.lang.String TYPE_TREE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "tree"

  public static final java.lang.String TYPE_TAG;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "tag"

  private static final byte[] ENCODED_TYPE_COMMIT;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final byte[] ENCODED_TYPE_BLOB;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final byte[] ENCODED_TYPE_TREE;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final byte[] ENCODED_TYPE_TAG;
    descriptor: [B
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final int OBJ_BAD;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  public static final int OBJ_EXT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int OBJ_COMMIT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int OBJ_TREE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int OBJ_BLOB;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int OBJ_TAG;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final int OBJ_TYPE_5;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  public static final int OBJ_OFS_DELTA;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 6

  public static final int OBJ_REF_DELTA;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 7

  public static final byte[] PACK_SIGNATURE;
    descriptor: [B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.nio.charset.Charset CHARSET;
    descriptor: Ljava/nio/charset/Charset;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final java.lang.String CHARACTER_ENCODING;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public static final java.lang.String MASTER;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "master"

  public static final java.lang.String STASH;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "stash"

  public static final java.lang.String R_HEADS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "refs/heads/"

  public static final java.lang.String R_REMOTES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "refs/remotes/"

  public static final java.lang.String R_TAGS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "refs/tags/"

  public static final java.lang.String R_NOTES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "refs/notes/"

  public static final java.lang.String R_NOTES_COMMITS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "refs/notes/commits"

  public static final java.lang.String R_REFS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "refs/"

  public static final java.lang.String R_STASH;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "refs/stash"

  public static final java.lang.String LOGS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "logs"

  public static final java.lang.String OBJECTS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "objects"

  public static final java.lang.String REFTABLE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "reftable"

  public static final java.lang.String TABLES_LIST;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "tables.list"

  public static final java.lang.String INFO_REFS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "info/refs"

  public static final java.lang.String INFO_ALTERNATES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "info/alternates"

  public static final java.lang.String INFO_HTTP_ALTERNATES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "info/http-alternates"

  public static final java.lang.String PACKED_REFS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "packed-refs"

  public static final java.lang.String INFO_EXCLUDE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "info/exclude"

  public static final java.lang.String INFO_ATTRIBUTES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "info/attributes"

  public static final java.lang.String OS_USER_DIR;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "user.dir"

  public static final java.lang.String OS_USER_NAME_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "user.name"

  public static final java.lang.String GIT_AUTHOR_NAME_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_AUTHOR_NAME"

  public static final java.lang.String GIT_AUTHOR_EMAIL_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_AUTHOR_EMAIL"

  public static final java.lang.String GIT_COMMITTER_NAME_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_COMMITTER_NAME"

  public static final java.lang.String GIT_COMMITTER_EMAIL_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_COMMITTER_EMAIL"

  public static final java.lang.String GIT_CONFIG_NOSYSTEM_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_CONFIG_NOSYSTEM"

  public static final java.lang.String XDG_CONFIG_HOME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "XDG_CONFIG_HOME"

  public static final java.lang.String GIT_CEILING_DIRECTORIES_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_CEILING_DIRECTORIES"

  public static final java.lang.String GIT_DIR_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_DIR"

  public static final java.lang.String GIT_WORK_TREE_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_WORK_TREE"

  public static final java.lang.String GIT_INDEX_FILE_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_INDEX_FILE"

  public static final java.lang.String GIT_OBJECT_DIRECTORY_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_OBJECT_DIRECTORY"

  public static final java.lang.String GIT_ALTERNATE_OBJECT_DIRECTORIES_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "GIT_ALTERNATE_OBJECT_DIRECTORIES"

  public static final java.lang.String UNKNOWN_USER_DEFAULT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "unknown-user"

  public static final java.lang.String SIGNED_OFF_BY_TAG;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "Signed-off-by: "

  public static final java.lang.String GITIGNORE_FILENAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: ".gitignore"

  public static final java.lang.String DEFAULT_REMOTE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "origin"

  public static final java.lang.String DOT_GIT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: ".git"

  public static final java.lang.String CONFIG;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "config"

  public static final java.lang.String DOT_GIT_EXT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: ".git"

  public static final java.lang.String DOT_BUNDLE_EXT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: ".bundle"

  public static final java.lang.String DOT_GIT_ATTRIBUTES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: ".gitattributes"

  public static final java.lang.String ATTR_FILTER;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "filter"

  public static final java.lang.String ATTR_FILTER_TYPE_CLEAN;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "clean"

  public static final java.lang.String ATTR_FILTER_TYPE_SMUDGE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "smudge"

  public static final java.lang.String BUILTIN_FILTER_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "jgit://builtin/"

  public static final java.lang.String DOT_GIT_IGNORE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: ".gitignore"

  public static final java.lang.String DOT_GIT_MODULES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: ".gitmodules"

  public static final java.lang.String SHALLOW;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "shallow"

  public static final java.lang.String GITDIR;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "gitdir: "

  public static final java.lang.String MODULES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "modules"

  public static final java.lang.String HOOKS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "hooks"

  public static final java.lang.String ATTR_MERGE;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "merge"

  public static final java.lang.String ATTR_DIFF;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "diff"

  public static final java.lang.String ATTR_BUILTIN_BINARY_MERGER;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "binary"

  public static final java.lang.String MERGE_MSG;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "MERGE_MSG"

  public static final java.lang.String MERGE_HEAD;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "MERGE_HEAD"

  public static final java.lang.String CHERRY_PICK_HEAD;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "CHERRY_PICK_HEAD"

  public static final java.lang.String SQUASH_MSG;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "SQUASH_MSG"

  public static final java.lang.String REVERT_HEAD;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "REVERT_HEAD"

  public static final java.lang.String ORIG_HEAD;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "ORIG_HEAD"

  public static final java.lang.String COMMIT_EDITMSG;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "COMMIT_EDITMSG"

  public static final org.eclipse.jgit.lib.ObjectId EMPTY_BLOB_ID;
    descriptor: Lorg/eclipse/jgit/lib/ObjectId;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.eclipse.jgit.lib.ObjectId EMPTY_TREE_ID;
    descriptor: Lorg/eclipse/jgit/lib/ObjectId;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.lang.String LOCK_SUFFIX;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: ".lock"

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 91
            ldc "commit"
            invokestatic org.eclipse.jgit.lib.Constants.encodeASCII:(Ljava/lang/String;)[B
            putstatic org.eclipse.jgit.lib.Constants.ENCODED_TYPE_COMMIT:[B
         1: .line 93
            ldc "blob"
            invokestatic org.eclipse.jgit.lib.Constants.encodeASCII:(Ljava/lang/String;)[B
            putstatic org.eclipse.jgit.lib.Constants.ENCODED_TYPE_BLOB:[B
         2: .line 95
            ldc "tree"
            invokestatic org.eclipse.jgit.lib.Constants.encodeASCII:(Ljava/lang/String;)[B
            putstatic org.eclipse.jgit.lib.Constants.ENCODED_TYPE_TREE:[B
         3: .line 97
            ldc "tag"
            invokestatic org.eclipse.jgit.lib.Constants.encodeASCII:(Ljava/lang/String;)[B
            putstatic org.eclipse.jgit.lib.Constants.ENCODED_TYPE_TAG:[B
         4: .line 195
            iconst_4
            newarray 8
            dup
            iconst_0
            bipush 80
            bastore
            dup
            iconst_1
            bipush 65
            bastore
            dup
            iconst_2
            bipush 67
            bastore
            dup
            iconst_3
            bipush 75
            bastore
            putstatic org.eclipse.jgit.lib.Constants.PACK_SIGNATURE:[B
         5: .line 683
            bipush 20
            invokestatic org.eclipse.jgit.lib.Constants.newMessageDigest:()Ljava/security/MessageDigest;
            invokevirtual java.security.MessageDigest.getDigestLength:()I
            if_icmpeq 7
         6: .line 684
            new java.lang.LinkageError
            dup
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.incorrectOBJECT_ID_LENGTH:Ljava/lang/String;
            invokespecial java.lang.LinkageError.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 685
      StackMap locals:
      StackMap stack:
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            putstatic org.eclipse.jgit.lib.Constants.CHARSET:Ljava/nio/charset/Charset;
         8: .line 686
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            invokevirtual java.nio.charset.Charset.name:()Ljava/lang/String;
            putstatic org.eclipse.jgit.lib.Constants.CHARACTER_ENCODING:Ljava/lang/String;
         9: .line 724
            ldc "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391"
            invokestatic org.eclipse.jgit.lib.ObjectId.fromString:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/ObjectId;
        10: .line 723
            putstatic org.eclipse.jgit.lib.Constants.EMPTY_BLOB_ID:Lorg/eclipse/jgit/lib/ObjectId;
        11: .line 732
            ldc "4b825dc642cb6eb9a060e54bf8d69288fbee4904"
            invokestatic org.eclipse.jgit.lib.ObjectId.fromString:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/ObjectId;
        12: .line 731
            putstatic org.eclipse.jgit.lib.Constants.EMPTY_TREE_ID:Lorg/eclipse/jgit/lib/ObjectId;
        13: .line 739
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static java.security.MessageDigest newMessageDigest();
    descriptor: ()Ljava/security/MessageDigest;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=1, args_size=0
         0: .line 492
            ldc "SHA-1"
            invokestatic java.security.MessageDigest.getInstance:(Ljava/lang/String;)Ljava/security/MessageDigest;
         1: areturn
         2: .line 493
      StackMap locals:
      StackMap stack: java.security.NoSuchAlgorithmException
            astore 0 /* nsae */
        start local 0 // java.security.NoSuchAlgorithmException nsae
         3: .line 494
            new java.lang.RuntimeException
            dup
         4: .line 495
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.requiredHashFunctionNotAvailable:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "SHA-1"
            aastore
         5: .line 494
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
         6: .line 495
            aload 0 /* nsae */
         7: .line 494
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.security.NoSuchAlgorithmException nsae
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            3    8     0  nsae  Ljava/security/NoSuchAlgorithmException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.security.NoSuchAlgorithmException

  public static java.lang.String typeString(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // int typeCode
         0: .line 506
            iload 0 /* typeCode */
            tableswitch { // 1 - 4
                    1: 1
                    2: 2
                    3: 3
                    4: 4
              default: 5
          }
         1: .line 508
      StackMap locals:
      StackMap stack:
            ldc "commit"
            areturn
         2: .line 510
      StackMap locals:
      StackMap stack:
            ldc "tree"
            areturn
         3: .line 512
      StackMap locals:
      StackMap stack:
            ldc "blob"
            areturn
         4: .line 514
      StackMap locals:
      StackMap stack:
            ldc "tag"
            areturn
         5: .line 516
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
         6: .line 517
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.badObjectType:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 0 /* typeCode */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
         7: .line 516
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // int typeCode
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0  typeCode  I
    MethodParameters:
          Name  Flags
      typeCode  

  public static byte[] encodedTypeString(int);
    descriptor: (I)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // int typeCode
         0: .line 531
            iload 0 /* typeCode */
            tableswitch { // 1 - 4
                    1: 1
                    2: 2
                    3: 3
                    4: 4
              default: 5
          }
         1: .line 533
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jgit.lib.Constants.ENCODED_TYPE_COMMIT:[B
            areturn
         2: .line 535
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jgit.lib.Constants.ENCODED_TYPE_TREE:[B
            areturn
         3: .line 537
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jgit.lib.Constants.ENCODED_TYPE_BLOB:[B
            areturn
         4: .line 539
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jgit.lib.Constants.ENCODED_TYPE_TAG:[B
            areturn
         5: .line 541
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
         6: .line 542
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.badObjectType:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 0 /* typeCode */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
         7: .line 541
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // int typeCode
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0  typeCode  I
    MethodParameters:
          Name  Flags
      typeCode  

  public static int decodeTypeString(org.eclipse.jgit.lib.AnyObjectId, byte[], byte, org.eclipse.jgit.util.MutableInteger);
    descriptor: (Lorg/eclipse/jgit/lib/AnyObjectId;[BBLorg/eclipse/jgit/util/MutableInteger;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.eclipse.jgit.lib.AnyObjectId id
        start local 1 // byte[] typeString
        start local 2 // byte endMark
        start local 3 // org.eclipse.jgit.util.MutableInteger offset
         0: .line 570
            aload 3 /* offset */
            getfield org.eclipse.jgit.util.MutableInteger.value:I
            istore 4 /* position */
        start local 4 // int position
         1: .line 571
            aload 1 /* typeString */
            iload 4 /* position */
            baload
            lookupswitch { // 3
                   98: 2
                   99: 9
                  116: 18
              default: 31
          }
         2: .line 573
      StackMap locals: int
      StackMap stack:
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_1
            iadd
            baload
            bipush 108
            if_icmpne 6
         3: .line 574
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_2
            iadd
            baload
            bipush 111
            if_icmpne 6
         4: .line 575
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_3
            iadd
            baload
            bipush 98
            if_icmpne 6
         5: .line 576
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_4
            iadd
            baload
            iload 2 /* endMark */
            if_icmpeq 7
         6: .line 577
      StackMap locals:
      StackMap stack:
            new org.eclipse.jgit.errors.CorruptObjectException
            dup
            aload 0 /* id */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.corruptObjectInvalidType:Ljava/lang/String;
            invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Lorg/eclipse/jgit/lib/AnyObjectId;Ljava/lang/String;)V
            athrow
         7: .line 578
      StackMap locals:
      StackMap stack:
            aload 3 /* offset */
            iload 4 /* position */
            iconst_5
            iadd
            putfield org.eclipse.jgit.util.MutableInteger.value:I
         8: .line 579
            iconst_3
            ireturn
         9: .line 582
      StackMap locals:
      StackMap stack:
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_1
            iadd
            baload
            bipush 111
            if_icmpne 15
        10: .line 583
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_2
            iadd
            baload
            bipush 109
            if_icmpne 15
        11: .line 584
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_3
            iadd
            baload
            bipush 109
            if_icmpne 15
        12: .line 585
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_4
            iadd
            baload
            bipush 105
            if_icmpne 15
        13: .line 586
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_5
            iadd
            baload
            bipush 116
            if_icmpne 15
        14: .line 587
            aload 1 /* typeString */
            iload 4 /* position */
            bipush 6
            iadd
            baload
            iload 2 /* endMark */
            if_icmpeq 16
        15: .line 588
      StackMap locals:
      StackMap stack:
            new org.eclipse.jgit.errors.CorruptObjectException
            dup
            aload 0 /* id */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.corruptObjectInvalidType:Ljava/lang/String;
            invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Lorg/eclipse/jgit/lib/AnyObjectId;Ljava/lang/String;)V
            athrow
        16: .line 589
      StackMap locals:
      StackMap stack:
            aload 3 /* offset */
            iload 4 /* position */
            bipush 7
            iadd
            putfield org.eclipse.jgit.util.MutableInteger.value:I
        17: .line 590
            iconst_1
            ireturn
        18: .line 593
      StackMap locals:
      StackMap stack:
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_1
            iadd
            baload
            lookupswitch { // 2
                   97: 19
                  114: 24
              default: 30
          }
        19: .line 595
      StackMap locals:
      StackMap stack:
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_2
            iadd
            baload
            bipush 103
            if_icmpne 21
        20: .line 596
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_3
            iadd
            baload
            iload 2 /* endMark */
            if_icmpeq 22
        21: .line 597
      StackMap locals:
      StackMap stack:
            new org.eclipse.jgit.errors.CorruptObjectException
            dup
            aload 0 /* id */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.corruptObjectInvalidType:Ljava/lang/String;
            invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Lorg/eclipse/jgit/lib/AnyObjectId;Ljava/lang/String;)V
            athrow
        22: .line 598
      StackMap locals:
      StackMap stack:
            aload 3 /* offset */
            iload 4 /* position */
            iconst_4
            iadd
            putfield org.eclipse.jgit.util.MutableInteger.value:I
        23: .line 599
            iconst_4
            ireturn
        24: .line 602
      StackMap locals:
      StackMap stack:
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_2
            iadd
            baload
            bipush 101
            if_icmpne 27
        25: .line 603
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_3
            iadd
            baload
            bipush 101
            if_icmpne 27
        26: .line 604
            aload 1 /* typeString */
            iload 4 /* position */
            iconst_4
            iadd
            baload
            iload 2 /* endMark */
            if_icmpeq 28
        27: .line 605
      StackMap locals:
      StackMap stack:
            new org.eclipse.jgit.errors.CorruptObjectException
            dup
            aload 0 /* id */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.corruptObjectInvalidType:Ljava/lang/String;
            invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Lorg/eclipse/jgit/lib/AnyObjectId;Ljava/lang/String;)V
            athrow
        28: .line 606
      StackMap locals:
      StackMap stack:
            aload 3 /* offset */
            iload 4 /* position */
            iconst_5
            iadd
            putfield org.eclipse.jgit.util.MutableInteger.value:I
        29: .line 607
            iconst_2
            ireturn
        30: .line 610
      StackMap locals:
      StackMap stack:
            new org.eclipse.jgit.errors.CorruptObjectException
            dup
            aload 0 /* id */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.corruptObjectInvalidType:Ljava/lang/String;
            invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Lorg/eclipse/jgit/lib/AnyObjectId;Ljava/lang/String;)V
            athrow
        31: .line 614
      StackMap locals:
      StackMap stack:
            new org.eclipse.jgit.errors.CorruptObjectException
            dup
            aload 0 /* id */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.corruptObjectInvalidType:Ljava/lang/String;
            invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Lorg/eclipse/jgit/lib/AnyObjectId;Ljava/lang/String;)V
            athrow
        end local 4 // int position
        32: .line 616
      StackMap locals: org.eclipse.jgit.lib.AnyObjectId byte[] int org.eclipse.jgit.util.MutableInteger
      StackMap stack: java.lang.ArrayIndexOutOfBoundsException
            astore 4 /* bad */
        start local 4 // java.lang.ArrayIndexOutOfBoundsException bad
        33: .line 617
            new org.eclipse.jgit.errors.CorruptObjectException
            dup
            aload 0 /* id */
        34: .line 618
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.corruptObjectInvalidType:Ljava/lang/String;
        35: .line 617
            invokespecial org.eclipse.jgit.errors.CorruptObjectException.<init>:(Lorg/eclipse/jgit/lib/AnyObjectId;Ljava/lang/String;)V
            astore 5 /* coe */
        start local 5 // org.eclipse.jgit.errors.CorruptObjectException coe
        36: .line 619
            aload 5 /* coe */
            aload 4 /* bad */
            invokevirtual org.eclipse.jgit.errors.CorruptObjectException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        37: .line 620
            aload 5 /* coe */
            athrow
        end local 5 // org.eclipse.jgit.errors.CorruptObjectException coe
        end local 4 // java.lang.ArrayIndexOutOfBoundsException bad
        end local 3 // org.eclipse.jgit.util.MutableInteger offset
        end local 2 // byte endMark
        end local 1 // byte[] typeString
        end local 0 // org.eclipse.jgit.lib.AnyObjectId id
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   38     0          id  Lorg/eclipse/jgit/lib/AnyObjectId;
            0   38     1  typeString  [B
            0   38     2     endMark  B
            0   38     3      offset  Lorg/eclipse/jgit/util/MutableInteger;
            1   32     4    position  I
           33   38     4         bad  Ljava/lang/ArrayIndexOutOfBoundsException;
           36   38     5         coe  Lorg/eclipse/jgit/errors/CorruptObjectException;
      Exception table:
        from    to  target  type
           0     8      32  Class java.lang.ArrayIndexOutOfBoundsException
           9    17      32  Class java.lang.ArrayIndexOutOfBoundsException
          18    23      32  Class java.lang.ArrayIndexOutOfBoundsException
          24    29      32  Class java.lang.ArrayIndexOutOfBoundsException
          30    32      32  Class java.lang.ArrayIndexOutOfBoundsException
    Exceptions:
      throws org.eclipse.jgit.errors.CorruptObjectException
    MethodParameters:
            Name  Flags
      id          final
      typeString  final
      endMark     final
      offset      final

  public static byte[] encodeASCII(long);
    descriptor: (J)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // long s
         0: .line 633
            lload 0 /* s */
            invokestatic java.lang.Long.toString:(J)Ljava/lang/String;
            invokestatic org.eclipse.jgit.lib.Constants.encodeASCII:(Ljava/lang/String;)[B
            areturn
        end local 0 // long s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     s  J
    MethodParameters:
      Name  Flags
      s     

  public static byte[] encodeASCII(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=1
        start local 0 // java.lang.String s
         0: .line 649
            aload 0 /* s */
            invokevirtual java.lang.String.length:()I
            newarray 8
            astore 1 /* r */
        start local 1 // byte[] r
         1: .line 650
            aload 1 /* r */
            arraylength
            iconst_1
            isub
            istore 2 /* k */
        start local 2 // int k
         2: goto 8
         3: .line 651
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* s */
            iload 2 /* k */
            invokevirtual java.lang.String.charAt:(I)C
            istore 3 /* c */
        start local 3 // char c
         4: .line 652
            iload 3 /* c */
            bipush 127
            if_icmple 6
         5: .line 653
            new java.lang.IllegalArgumentException
            dup
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.notASCIIString:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* s */
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 654
      StackMap locals: int
      StackMap stack:
            aload 1 /* r */
            iload 2 /* k */
            iload 3 /* c */
            i2b
            bastore
        end local 3 // char c
         7: .line 650
            iinc 2 /* k */ -1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* k */
            ifge 3
        end local 2 // int k
         9: .line 656
            aload 1 /* r */
            areturn
        end local 1 // byte[] r
        end local 0 // java.lang.String s
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0     s  Ljava/lang/String;
            1   10     1     r  [B
            2    9     2     k  I
            4    7     3     c  C
    MethodParameters:
      Name  Flags
      s     

  public static byte[] encode(java.lang.String);
    descriptor: (Ljava/lang/String;)[B
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // java.lang.String str
         0: .line 669
            getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
            aload 0 /* str */
            invokevirtual java.nio.charset.Charset.encode:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
            astore 1 /* bb */
        start local 1 // java.nio.ByteBuffer bb
         1: .line 670
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.limit:()I
            istore 2 /* len */
        start local 2 // int len
         2: .line 671
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.hasArray:()Z
            ifeq 6
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            ifne 6
         3: .line 672
            aload 1 /* bb */
            invokevirtual java.nio.ByteBuffer.array:()[B
            astore 3 /* arr */
        start local 3 // byte[] arr
         4: .line 673
            aload 3 /* arr */
            arraylength
            iload 2 /* len */
            if_icmpne 6
         5: .line 674
            aload 3 /* arr */
            areturn
        end local 3 // byte[] arr
         6: .line 677
      StackMap locals: java.nio.ByteBuffer int
      StackMap stack:
            iload 2 /* len */
            newarray 8
            astore 3 /* arr */
        start local 3 // byte[] arr
         7: .line 678
            aload 1 /* bb */
            aload 3 /* arr */
            invokevirtual java.nio.ByteBuffer.get:([B)Ljava/nio/ByteBuffer;
            pop
         8: .line 679
            aload 3 /* arr */
            areturn
        end local 3 // byte[] arr
        end local 2 // int len
        end local 1 // java.nio.ByteBuffer bb
        end local 0 // java.lang.String str
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0   str  Ljava/lang/String;
            1    9     1    bb  Ljava/nio/ByteBuffer;
            2    9     2   len  I
            4    6     3   arr  [B
            7    9     3   arr  [B
    MethodParameters:
      Name  Flags
      str   

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.lib.Constants this
         0: .line 741
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 743
            return
        end local 0 // org.eclipse.jgit.lib.Constants this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jgit/lib/Constants;
}
SourceFile: "Constants.java"