class org.eclipse.jgit.diff.SimilarityRenameDetector
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.eclipse.jgit.diff.SimilarityRenameDetector
  super_class: java.lang.Object
{
  private static final int BITS_PER_INDEX;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 28

  private static final int INDEX_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 268435455

  private static final int SCORE_SHIFT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 56

  private org.eclipse.jgit.diff.ContentSource$Pair reader;
    descriptor: Lorg/eclipse/jgit/diff/ContentSource$Pair;
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<org.eclipse.jgit.diff.DiffEntry> srcs;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;

  private java.util.List<org.eclipse.jgit.diff.DiffEntry> dsts;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;

  private long[] matrix;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private int renameScore;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean tableOverflow;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<org.eclipse.jgit.diff.DiffEntry> out;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;

  void <init>(org.eclipse.jgit.diff.ContentSource$Pair, java.util.List<org.eclipse.jgit.diff.DiffEntry>, java.util.List<org.eclipse.jgit.diff.DiffEntry>);
    descriptor: (Lorg/eclipse/jgit/diff/ContentSource$Pair;Ljava/util/List;Ljava/util/List;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
        start local 1 // org.eclipse.jgit.diff.ContentSource$Pair reader
        start local 2 // java.util.List srcs
        start local 3 // java.util.List dsts
         0: .line 88
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 81
            aload 0 /* this */
            bipush 60
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.renameScore:I
         2: .line 90
            aload 0 /* this */
            aload 1 /* reader */
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.reader:Lorg/eclipse/jgit/diff/ContentSource$Pair;
         3: .line 91
            aload 0 /* this */
            aload 2 /* srcs */
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
         4: .line 92
            aload 0 /* this */
            aload 3 /* dsts */
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
         5: .line 93
            return
        end local 3 // java.util.List dsts
        end local 2 // java.util.List srcs
        end local 1 // org.eclipse.jgit.diff.ContentSource$Pair reader
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;
            0    6     1  reader  Lorg/eclipse/jgit/diff/ContentSource$Pair;
            0    6     2    srcs  Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;
            0    6     3    dsts  Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;
    Signature: (Lorg/eclipse/jgit/diff/ContentSource$Pair;Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;)V
    MethodParameters:
        Name  Flags
      reader  
      srcs    
      dsts    

  void setRenameScore(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
        start local 1 // int score
         0: .line 96
            aload 0 /* this */
            iload 1 /* score */
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.renameScore:I
         1: .line 97
            return
        end local 1 // int score
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;
            0    2     1  score  I
    MethodParameters:
       Name  Flags
      score  

  void compute(org.eclipse.jgit.lib.ProgressMonitor);
    descriptor: (Lorg/eclipse/jgit/lib/ProgressMonitor;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
        start local 1 // org.eclipse.jgit.lib.ProgressMonitor pm
         0: .line 100
            aload 1 /* pm */
            ifnonnull 2
         1: .line 101
            getstatic org.eclipse.jgit.lib.NullProgressMonitor.INSTANCE:Lorg/eclipse/jgit/lib/NullProgressMonitor;
            astore 1 /* pm */
         2: .line 103
      StackMap locals:
      StackMap stack:
            aload 1 /* pm */
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.renamesFindingByContent:Ljava/lang/String;
         3: .line 104
            iconst_2
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            imul
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            imul
         4: .line 103
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.beginTask:(Ljava/lang/String;I)V
         5: .line 106
            aload 0 /* this */
            aload 1 /* pm */
            invokevirtual org.eclipse.jgit.diff.SimilarityRenameDetector.buildMatrix:(Lorg/eclipse/jgit/lib/ProgressMonitor;)I
            istore 2 /* mNext */
        start local 2 // int mNext
         6: .line 107
            aload 0 /* this */
            new java.util.ArrayList
            dup
            iload 2 /* mNext */
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokestatic java.lang.Math.min:(II)I
            invokespecial java.util.ArrayList.<init>:(I)V
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.out:Ljava/util/List;
         7: .line 112
            iinc 2 /* mNext */ -1
            goto 27
         8: .line 113
      StackMap locals: int
      StackMap stack:
            aload 1 /* pm */
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.isCancelled:()Z
            ifeq 10
         9: .line 116
            new org.eclipse.jgit.errors.CancelledException
            dup
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.renameCancelled:Ljava/lang/String;
            invokespecial org.eclipse.jgit.errors.CancelledException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 118
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.matrix:[J
            iload 2 /* mNext */
            laload
            lstore 3 /* ent */
        start local 3 // long ent
        11: .line 119
            lload 3 /* ent */
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.srcFile:(J)I
            istore 5 /* sIdx */
        start local 5 // int sIdx
        12: .line 120
            lload 3 /* ent */
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.dstFile:(J)I
            istore 6 /* dIdx */
        start local 6 // int dIdx
        13: .line 121
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
            iload 5 /* sIdx */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jgit.diff.DiffEntry
            astore 7 /* s */
        start local 7 // org.eclipse.jgit.diff.DiffEntry s
        14: .line 122
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            iload 6 /* dIdx */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jgit.diff.DiffEntry
            astore 8 /* d */
        start local 8 // org.eclipse.jgit.diff.DiffEntry d
        15: .line 124
            aload 8 /* d */
            ifnonnull 18
        16: .line 125
            aload 1 /* pm */
            iconst_1
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        17: .line 126
            goto 26
        18: .line 130
      StackMap locals: org.eclipse.jgit.diff.SimilarityRenameDetector org.eclipse.jgit.lib.ProgressMonitor int long int int org.eclipse.jgit.diff.DiffEntry org.eclipse.jgit.diff.DiffEntry
      StackMap stack:
            aload 7 /* s */
            getfield org.eclipse.jgit.diff.DiffEntry.changeType:Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
            getstatic org.eclipse.jgit.diff.DiffEntry$ChangeType.DELETE:Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
            if_acmpne 22
        19: .line 135
            aload 7 /* s */
            getstatic org.eclipse.jgit.diff.DiffEntry$ChangeType.RENAME:Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
            putfield org.eclipse.jgit.diff.DiffEntry.changeType:Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
        20: .line 136
            getstatic org.eclipse.jgit.diff.DiffEntry$ChangeType.RENAME:Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
            astore 9 /* type */
        start local 9 // org.eclipse.jgit.diff.DiffEntry$ChangeType type
        21: .line 137
            goto 23
        end local 9 // org.eclipse.jgit.diff.DiffEntry$ChangeType type
        22: .line 138
      StackMap locals:
      StackMap stack:
            getstatic org.eclipse.jgit.diff.DiffEntry$ChangeType.COPY:Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
            astore 9 /* type */
        start local 9 // org.eclipse.jgit.diff.DiffEntry$ChangeType type
        23: .line 141
      StackMap locals: org.eclipse.jgit.diff.DiffEntry$ChangeType
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.out:Ljava/util/List;
            aload 9 /* type */
            aload 7 /* s */
            aload 8 /* d */
            lload 3 /* ent */
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.score:(J)I
            invokestatic org.eclipse.jgit.diff.DiffEntry.pair:(Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;Lorg/eclipse/jgit/diff/DiffEntry;Lorg/eclipse/jgit/diff/DiffEntry;I)Lorg/eclipse/jgit/diff/DiffEntry;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        24: .line 142
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            iload 6 /* dIdx */
            aconst_null
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        25: .line 143
            aload 1 /* pm */
            iconst_1
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        end local 9 // org.eclipse.jgit.diff.DiffEntry$ChangeType type
        end local 8 // org.eclipse.jgit.diff.DiffEntry d
        end local 7 // org.eclipse.jgit.diff.DiffEntry s
        end local 6 // int dIdx
        end local 5 // int sIdx
        end local 3 // long ent
        26: .line 112
      StackMap locals: org.eclipse.jgit.diff.SimilarityRenameDetector org.eclipse.jgit.lib.ProgressMonitor int
      StackMap stack:
            iinc 2 /* mNext */ -1
      StackMap locals:
      StackMap stack:
        27: iload 2 /* mNext */
            ifge 8
        28: .line 146
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.compactSrcList:(Ljava/util/List;)Ljava/util/List;
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
        29: .line 147
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.compactDstList:(Ljava/util/List;)Ljava/util/List;
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
        30: .line 148
            aload 1 /* pm */
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.endTask:()V
        31: .line 149
            return
        end local 2 // int mNext
        end local 1 // org.eclipse.jgit.lib.ProgressMonitor pm
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   32     0   this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;
            0   32     1     pm  Lorg/eclipse/jgit/lib/ProgressMonitor;
            6   32     2  mNext  I
           11   26     3    ent  J
           12   26     5   sIdx  I
           13   26     6   dIdx  I
           14   26     7      s  Lorg/eclipse/jgit/diff/DiffEntry;
           15   26     8      d  Lorg/eclipse/jgit/diff/DiffEntry;
           21   22     9   type  Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
           23   26     9   type  Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
    Exceptions:
      throws java.io.IOException, org.eclipse.jgit.errors.CancelledException
    MethodParameters:
      Name  Flags
      pm    

  java.util.List<org.eclipse.jgit.diff.DiffEntry> getMatches();
    descriptor: ()Ljava/util/List;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
         0: .line 152
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.out:Ljava/util/List;
            areturn
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;
    Signature: ()Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;

  java.util.List<org.eclipse.jgit.diff.DiffEntry> getLeftOverSources();
    descriptor: ()Ljava/util/List;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
         0: .line 156
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
            areturn
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;
    Signature: ()Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;

  java.util.List<org.eclipse.jgit.diff.DiffEntry> getLeftOverDestinations();
    descriptor: ()Ljava/util/List;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
         0: .line 160
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            areturn
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;
    Signature: ()Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;

  boolean isTableOverflow();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
         0: .line 164
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.tableOverflow:Z
            ireturn
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;

  private static java.util.List<org.eclipse.jgit.diff.DiffEntry> compactSrcList(java.util.List<org.eclipse.jgit.diff.DiffEntry>);
    descriptor: (Ljava/util/List;)Ljava/util/List;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.util.List in
         0: .line 168
            new java.util.ArrayList
            dup
            aload 0 /* in */
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* r */
        start local 1 // java.util.ArrayList r
         1: .line 169
            aload 0 /* in */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: java.util.List java.util.ArrayList top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jgit.diff.DiffEntry
            astore 2 /* e */
        start local 2 // org.eclipse.jgit.diff.DiffEntry e
         3: .line 170
            aload 2 /* e */
            getfield org.eclipse.jgit.diff.DiffEntry.changeType:Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
            getstatic org.eclipse.jgit.diff.DiffEntry$ChangeType.DELETE:Lorg/eclipse/jgit/diff/DiffEntry$ChangeType;
            if_acmpne 5
         4: .line 171
            aload 1 /* r */
            aload 2 /* e */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // org.eclipse.jgit.diff.DiffEntry e
         5: .line 169
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 173
            aload 1 /* r */
            areturn
        end local 1 // java.util.ArrayList r
        end local 0 // java.util.List in
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0    in  Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;
            1    7     1     r  Ljava/util/ArrayList<Lorg/eclipse/jgit/diff/DiffEntry;>;
            3    5     2     e  Lorg/eclipse/jgit/diff/DiffEntry;
    Signature: (Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;)Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;
    MethodParameters:
      Name  Flags
      in    

  private static java.util.List<org.eclipse.jgit.diff.DiffEntry> compactDstList(java.util.List<org.eclipse.jgit.diff.DiffEntry>);
    descriptor: (Ljava/util/List;)Ljava/util/List;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // java.util.List in
         0: .line 177
            new java.util.ArrayList
            dup
            aload 0 /* in */
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* r */
        start local 1 // java.util.ArrayList r
         1: .line 178
            aload 0 /* in */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 5
      StackMap locals: java.util.List java.util.ArrayList top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jgit.diff.DiffEntry
            astore 2 /* e */
        start local 2 // org.eclipse.jgit.diff.DiffEntry e
         3: .line 179
            aload 2 /* e */
            ifnull 5
         4: .line 180
            aload 1 /* r */
            aload 2 /* e */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // org.eclipse.jgit.diff.DiffEntry e
         5: .line 178
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         6: .line 182
            aload 1 /* r */
            areturn
        end local 1 // java.util.ArrayList r
        end local 0 // java.util.List in
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0    in  Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;
            1    7     1     r  Ljava/util/ArrayList<Lorg/eclipse/jgit/diff/DiffEntry;>;
            3    5     2     e  Lorg/eclipse/jgit/diff/DiffEntry;
    Signature: (Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;)Ljava/util/List<Lorg/eclipse/jgit/diff/DiffEntry;>;
    MethodParameters:
      Name  Flags
      in    

  private int buildMatrix(org.eclipse.jgit.lib.ProgressMonitor);
    descriptor: (Lorg/eclipse/jgit/lib/ProgressMonitor;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=23, args_size=2
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
        start local 1 // org.eclipse.jgit.lib.ProgressMonitor pm
         0: .line 190
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            imul
            newarray 11
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.matrix:[J
         1: .line 192
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            newarray 11
            astore 2 /* srcSizes */
        start local 2 // long[] srcSizes
         2: .line 193
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            newarray 11
            astore 3 /* dstSizes */
        start local 3 // long[] dstSizes
         3: .line 194
            aconst_null
            astore 4 /* dstTooLarge */
        start local 4 // java.util.BitSet dstTooLarge
         4: .line 200
            iconst_0
            istore 5 /* mNext */
        start local 5 // int mNext
         5: .line 201
            iconst_0
            istore 6 /* srcIdx */
        start local 6 // int srcIdx
         6: goto 67
         7: .line 202
      StackMap locals: org.eclipse.jgit.diff.SimilarityRenameDetector org.eclipse.jgit.lib.ProgressMonitor long[] long[] java.util.BitSet int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
            iload 6 /* srcIdx */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jgit.diff.DiffEntry
            astore 7 /* srcEnt */
        start local 7 // org.eclipse.jgit.diff.DiffEntry srcEnt
         8: .line 203
            aload 7 /* srcEnt */
            getfield org.eclipse.jgit.diff.DiffEntry.oldMode:Lorg/eclipse/jgit/lib/FileMode;
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.isFile:(Lorg/eclipse/jgit/lib/FileMode;)Z
            ifne 11
         9: .line 204
            aload 1 /* pm */
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        10: .line 205
            goto 66
        11: .line 208
      StackMap locals: org.eclipse.jgit.diff.DiffEntry
      StackMap stack:
            aconst_null
            astore 8 /* s */
        start local 8 // org.eclipse.jgit.diff.SimilarityIndex s
        12: .line 210
            iconst_0
            istore 9 /* dstIdx */
        start local 9 // int dstIdx
        13: goto 65
        14: .line 211
      StackMap locals: org.eclipse.jgit.diff.SimilarityIndex int
      StackMap stack:
            aload 1 /* pm */
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.isCancelled:()Z
            ifeq 18
        15: .line 215
            new org.eclipse.jgit.errors.CancelledException
            dup
        16: .line 216
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.renameCancelled:Ljava/lang/String;
        17: .line 215
            invokespecial org.eclipse.jgit.errors.CancelledException.<init>:(Ljava/lang/String;)V
            athrow
        18: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            iload 9 /* dstIdx */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.eclipse.jgit.diff.DiffEntry
            astore 10 /* dstEnt */
        start local 10 // org.eclipse.jgit.diff.DiffEntry dstEnt
        19: .line 221
            aload 10 /* dstEnt */
            getfield org.eclipse.jgit.diff.DiffEntry.newMode:Lorg/eclipse/jgit/lib/FileMode;
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.isFile:(Lorg/eclipse/jgit/lib/FileMode;)Z
            ifne 22
        20: .line 222
            aload 1 /* pm */
            iconst_1
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        21: .line 223
            goto 64
        22: .line 226
      StackMap locals: org.eclipse.jgit.diff.DiffEntry
      StackMap stack:
            aload 7 /* srcEnt */
            getfield org.eclipse.jgit.diff.DiffEntry.oldMode:Lorg/eclipse/jgit/lib/FileMode;
            aload 10 /* dstEnt */
            getfield org.eclipse.jgit.diff.DiffEntry.newMode:Lorg/eclipse/jgit/lib/FileMode;
            invokestatic org.eclipse.jgit.diff.RenameDetector.sameType:(Lorg/eclipse/jgit/lib/FileMode;Lorg/eclipse/jgit/lib/FileMode;)Z
            ifne 25
        23: .line 227
            aload 1 /* pm */
            iconst_1
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        24: .line 228
            goto 64
        25: .line 231
      StackMap locals:
      StackMap stack:
            aload 4 /* dstTooLarge */
            ifnull 28
            aload 4 /* dstTooLarge */
            iload 9 /* dstIdx */
            invokevirtual java.util.BitSet.get:(I)Z
            ifeq 28
        26: .line 232
            aload 1 /* pm */
            iconst_1
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        27: .line 233
            goto 64
        28: .line 236
      StackMap locals:
      StackMap stack:
            aload 2 /* srcSizes */
            iload 6 /* srcIdx */
            laload
            lstore 11 /* srcSize */
        start local 11 // long srcSize
        29: .line 237
            lload 11 /* srcSize */
            lconst_0
            lcmp
            ifne 32
        30: .line 238
            aload 0 /* this */
            getstatic org.eclipse.jgit.diff.DiffEntry$Side.OLD:Lorg/eclipse/jgit/diff/DiffEntry$Side;
            aload 7 /* srcEnt */
            invokevirtual org.eclipse.jgit.diff.SimilarityRenameDetector.size:(Lorg/eclipse/jgit/diff/DiffEntry$Side;Lorg/eclipse/jgit/diff/DiffEntry;)J
            lconst_1
            ladd
            lstore 11 /* srcSize */
        31: .line 239
            aload 2 /* srcSizes */
            iload 6 /* srcIdx */
            lload 11 /* srcSize */
            lastore
        32: .line 242
      StackMap locals: long
      StackMap stack:
            aload 3 /* dstSizes */
            iload 9 /* dstIdx */
            laload
            lstore 13 /* dstSize */
        start local 13 // long dstSize
        33: .line 243
            lload 13 /* dstSize */
            lconst_0
            lcmp
            ifne 36
        34: .line 244
            aload 0 /* this */
            getstatic org.eclipse.jgit.diff.DiffEntry$Side.NEW:Lorg/eclipse/jgit/diff/DiffEntry$Side;
            aload 10 /* dstEnt */
            invokevirtual org.eclipse.jgit.diff.SimilarityRenameDetector.size:(Lorg/eclipse/jgit/diff/DiffEntry$Side;Lorg/eclipse/jgit/diff/DiffEntry;)J
            lconst_1
            ladd
            lstore 13 /* dstSize */
        35: .line 245
            aload 3 /* dstSizes */
            iload 9 /* dstIdx */
            lload 13 /* dstSize */
            lastore
        36: .line 248
      StackMap locals: long
      StackMap stack:
            lload 11 /* srcSize */
            lload 13 /* dstSize */
            invokestatic java.lang.Math.max:(JJ)J
            lstore 15 /* max */
        start local 15 // long max
        37: .line 249
            lload 11 /* srcSize */
            lload 13 /* dstSize */
            invokestatic java.lang.Math.min:(JJ)J
            lstore 17 /* min */
        start local 17 // long min
        38: .line 250
            lload 17 /* min */
            ldc 100
            lmul
            lload 15 /* max */
            ldiv
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.renameScore:I
            i2l
            lcmp
            ifge 41
        39: .line 252
            aload 1 /* pm */
            iconst_1
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        40: .line 253
            goto 64
        41: .line 256
      StackMap locals: long long
      StackMap stack:
            aload 8 /* s */
            ifnonnull 47
        42: .line 258
            aload 0 /* this */
            getstatic org.eclipse.jgit.diff.DiffEntry$Side.OLD:Lorg/eclipse/jgit/diff/DiffEntry$Side;
            aload 7 /* srcEnt */
            invokevirtual org.eclipse.jgit.diff.SimilarityRenameDetector.hash:(Lorg/eclipse/jgit/diff/DiffEntry$Side;Lorg/eclipse/jgit/diff/DiffEntry;)Lorg/eclipse/jgit/diff/SimilarityIndex;
            astore 8 /* s */
        43: .line 259
            goto 47
      StackMap locals:
      StackMap stack: org.eclipse.jgit.diff.SimilarityIndex$TableFullException
        44: pop
        45: .line 260
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.tableOverflow:Z
        46: .line 261
            goto 66
        47: .line 267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.eclipse.jgit.diff.DiffEntry$Side.NEW:Lorg/eclipse/jgit/diff/DiffEntry$Side;
            aload 10 /* dstEnt */
            invokevirtual org.eclipse.jgit.diff.SimilarityRenameDetector.hash:(Lorg/eclipse/jgit/diff/DiffEntry$Side;Lorg/eclipse/jgit/diff/DiffEntry;)Lorg/eclipse/jgit/diff/SimilarityIndex;
            astore 19 /* d */
        start local 19 // org.eclipse.jgit.diff.SimilarityIndex d
        48: .line 268
            goto 56
        end local 19 // org.eclipse.jgit.diff.SimilarityIndex d
      StackMap locals:
      StackMap stack: org.eclipse.jgit.diff.SimilarityIndex$TableFullException
        49: pop
        50: .line 269
            aload 4 /* dstTooLarge */
            ifnonnull 52
        51: .line 270
            new java.util.BitSet
            dup
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokespecial java.util.BitSet.<init>:(I)V
            astore 4 /* dstTooLarge */
        52: .line 271
      StackMap locals:
      StackMap stack:
            aload 4 /* dstTooLarge */
            iload 9 /* dstIdx */
            invokevirtual java.util.BitSet.set:(I)V
        53: .line 272
            aload 0 /* this */
            iconst_1
            putfield org.eclipse.jgit.diff.SimilarityRenameDetector.tableOverflow:Z
        54: .line 273
            aload 1 /* pm */
            iconst_1
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        55: .line 274
            goto 64
        start local 19 // org.eclipse.jgit.diff.SimilarityIndex d
        56: .line 277
      StackMap locals: org.eclipse.jgit.diff.SimilarityIndex
      StackMap stack:
            aload 8 /* s */
            aload 19 /* d */
            sipush 10000
            invokevirtual org.eclipse.jgit.diff.SimilarityIndex.score:(Lorg/eclipse/jgit/diff/SimilarityIndex;I)I
            istore 20 /* contentScore */
        start local 20 // int contentScore
        57: .line 282
            aload 7 /* srcEnt */
            getfield org.eclipse.jgit.diff.DiffEntry.oldPath:Ljava/lang/String;
            aload 10 /* dstEnt */
            getfield org.eclipse.jgit.diff.DiffEntry.newPath:Ljava/lang/String;
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.nameScore:(Ljava/lang/String;Ljava/lang/String;)I
            bipush 100
            imul
            istore 21 /* nameScore */
        start local 21 // int nameScore
        58: .line 284
            iload 20 /* contentScore */
            bipush 99
            imul
            iload 21 /* nameScore */
            iconst_1
            imul
            iadd
            sipush 10000
            idiv
            istore 22 /* score */
        start local 22 // int score
        59: .line 286
            iload 22 /* score */
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.renameScore:I
            if_icmpge 62
        60: .line 287
            aload 1 /* pm */
            iconst_1
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        61: .line 288
            goto 64
        62: .line 291
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.matrix:[J
            iload 5 /* mNext */
            iinc 5 /* mNext */ 1
            iload 22 /* score */
            iload 6 /* srcIdx */
            iload 9 /* dstIdx */
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.encode:(III)J
            lastore
        63: .line 292
            aload 1 /* pm */
            iconst_1
            invokeinterface org.eclipse.jgit.lib.ProgressMonitor.update:(I)V
        end local 22 // int score
        end local 21 // int nameScore
        end local 20 // int contentScore
        end local 19 // org.eclipse.jgit.diff.SimilarityIndex d
        end local 17 // long min
        end local 15 // long max
        end local 13 // long dstSize
        end local 11 // long srcSize
        end local 10 // org.eclipse.jgit.diff.DiffEntry dstEnt
        64: .line 210
      StackMap locals: org.eclipse.jgit.diff.SimilarityRenameDetector org.eclipse.jgit.lib.ProgressMonitor long[] long[] java.util.BitSet int int org.eclipse.jgit.diff.DiffEntry org.eclipse.jgit.diff.SimilarityIndex int
      StackMap stack:
            iinc 9 /* dstIdx */ 1
      StackMap locals:
      StackMap stack:
        65: iload 9 /* dstIdx */
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.dsts:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 14
        end local 9 // int dstIdx
        end local 8 // org.eclipse.jgit.diff.SimilarityIndex s
        end local 7 // org.eclipse.jgit.diff.DiffEntry srcEnt
        66: .line 201
      StackMap locals:
      StackMap stack:
            iinc 6 /* srcIdx */ 1
      StackMap locals:
      StackMap stack:
        67: iload 6 /* srcIdx */
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.srcs:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmplt 7
        end local 6 // int srcIdx
        68: .line 300
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.matrix:[J
            iconst_0
            iload 5 /* mNext */
            invokestatic java.util.Arrays.sort:([JII)V
        69: .line 301
            iload 5 /* mNext */
            ireturn
        end local 5 // int mNext
        end local 4 // java.util.BitSet dstTooLarge
        end local 3 // long[] dstSizes
        end local 2 // long[] srcSizes
        end local 1 // org.eclipse.jgit.lib.ProgressMonitor pm
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   70     0          this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;
            0   70     1            pm  Lorg/eclipse/jgit/lib/ProgressMonitor;
            2   70     2      srcSizes  [J
            3   70     3      dstSizes  [J
            4   70     4   dstTooLarge  Ljava/util/BitSet;
            5   70     5         mNext  I
            6   68     6        srcIdx  I
            8   66     7        srcEnt  Lorg/eclipse/jgit/diff/DiffEntry;
           12   66     8             s  Lorg/eclipse/jgit/diff/SimilarityIndex;
           13   66     9        dstIdx  I
           19   64    10        dstEnt  Lorg/eclipse/jgit/diff/DiffEntry;
           29   64    11       srcSize  J
           33   64    13       dstSize  J
           37   64    15           max  J
           38   64    17           min  J
           48   49    19             d  Lorg/eclipse/jgit/diff/SimilarityIndex;
           56   64    19             d  Lorg/eclipse/jgit/diff/SimilarityIndex;
           57   64    20  contentScore  I
           58   64    21     nameScore  I
           59   64    22         score  I
      Exception table:
        from    to  target  type
          42    43      44  Class org.eclipse.jgit.diff.SimilarityIndex$TableFullException
          47    48      49  Class org.eclipse.jgit.diff.SimilarityIndex$TableFullException
    Exceptions:
      throws java.io.IOException, org.eclipse.jgit.errors.CancelledException
    MethodParameters:
      Name  Flags
      pm    

  static int nameScore(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=12, args_size=2
        start local 0 // java.lang.String a
        start local 1 // java.lang.String b
         0: .line 305
            aload 0 /* a */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_1
            iadd
            istore 2 /* aDirLen */
        start local 2 // int aDirLen
         1: .line 306
            aload 1 /* b */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            iconst_1
            iadd
            istore 3 /* bDirLen */
        start local 3 // int bDirLen
         2: .line 308
            iload 2 /* aDirLen */
            iload 3 /* bDirLen */
            invokestatic java.lang.Math.min:(II)I
            istore 4 /* dirMin */
        start local 4 // int dirMin
         3: .line 309
            iload 2 /* aDirLen */
            iload 3 /* bDirLen */
            invokestatic java.lang.Math.max:(II)I
            istore 5 /* dirMax */
        start local 5 // int dirMax
         4: .line 314
            iload 5 /* dirMax */
            ifne 8
         5: .line 315
            bipush 100
            istore 6 /* dirScoreLtr */
        start local 6 // int dirScoreLtr
         6: .line 316
            bipush 100
            istore 7 /* dirScoreRtl */
        start local 7 // int dirScoreRtl
         7: .line 317
            goto 26
        end local 7 // int dirScoreRtl
        end local 6 // int dirScoreLtr
         8: .line 318
      StackMap locals: java.lang.String java.lang.String int int int int
      StackMap stack:
            iconst_0
            istore 8 /* dirSim */
        start local 8 // int dirSim
         9: .line 319
            goto 13
        10: .line 320
      StackMap locals: java.lang.String java.lang.String int int int int top top int
      StackMap stack:
            aload 0 /* a */
            iload 8 /* dirSim */
            invokevirtual java.lang.String.charAt:(I)C
            aload 1 /* b */
            iload 8 /* dirSim */
            invokevirtual java.lang.String.charAt:(I)C
            if_icmpeq 12
        11: .line 321
            goto 14
        12: .line 319
      StackMap locals:
      StackMap stack:
            iinc 8 /* dirSim */ 1
      StackMap locals:
      StackMap stack:
        13: iload 8 /* dirSim */
            iload 4 /* dirMin */
            if_icmplt 10
        14: .line 323
      StackMap locals:
      StackMap stack:
            iload 8 /* dirSim */
            bipush 100
            imul
            iload 5 /* dirMax */
            idiv
            istore 6 /* dirScoreLtr */
        start local 6 // int dirScoreLtr
        15: .line 325
            iload 6 /* dirScoreLtr */
            bipush 100
            if_icmpne 18
        16: .line 326
            bipush 100
            istore 7 /* dirScoreRtl */
        start local 7 // int dirScoreRtl
        17: .line 327
            goto 26
        end local 7 // int dirScoreRtl
        18: .line 328
      StackMap locals: java.lang.String java.lang.String int int int int int top int
      StackMap stack:
            iconst_0
            istore 8 /* dirSim */
            goto 24
        19: .line 329
      StackMap locals:
      StackMap stack:
            aload 0 /* a */
            iload 2 /* aDirLen */
            iconst_1
            isub
            iload 8 /* dirSim */
            isub
            invokevirtual java.lang.String.charAt:(I)C
            aload 1 /* b */
            iload 3 /* bDirLen */
            iconst_1
            isub
        20: .line 330
            iload 8 /* dirSim */
            isub
        21: .line 329
            invokevirtual java.lang.String.charAt:(I)C
            if_icmpeq 23
        22: .line 331
            goto 25
        23: .line 328
      StackMap locals:
      StackMap stack:
            iinc 8 /* dirSim */ 1
      StackMap locals:
      StackMap stack:
        24: iload 8 /* dirSim */
            iload 4 /* dirMin */
            if_icmplt 19
        25: .line 333
      StackMap locals:
      StackMap stack:
            iload 8 /* dirSim */
            bipush 100
            imul
            iload 5 /* dirMax */
            idiv
            istore 7 /* dirScoreRtl */
        end local 8 // int dirSim
        start local 7 // int dirScoreRtl
        26: .line 337
      StackMap locals: java.lang.String java.lang.String int int int int int int
      StackMap stack:
            aload 0 /* a */
            invokevirtual java.lang.String.length:()I
            iload 2 /* aDirLen */
            isub
            aload 1 /* b */
            invokevirtual java.lang.String.length:()I
            iload 3 /* bDirLen */
            isub
            invokestatic java.lang.Math.min:(II)I
            istore 8 /* fileMin */
        start local 8 // int fileMin
        27: .line 338
            aload 0 /* a */
            invokevirtual java.lang.String.length:()I
            iload 2 /* aDirLen */
            isub
            aload 1 /* b */
            invokevirtual java.lang.String.length:()I
            iload 3 /* bDirLen */
            isub
            invokestatic java.lang.Math.max:(II)I
            istore 9 /* fileMax */
        start local 9 // int fileMax
        28: .line 340
            iconst_0
            istore 10 /* fileSim */
        start local 10 // int fileSim
        29: .line 341
            goto 35
        30: .line 342
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* a */
            aload 0 /* a */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            iload 10 /* fileSim */
            isub
            invokevirtual java.lang.String.charAt:(I)C
            aload 1 /* b */
            aload 1 /* b */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
        31: .line 343
            iload 10 /* fileSim */
            isub
        32: .line 342
            invokevirtual java.lang.String.charAt:(I)C
            if_icmpeq 34
        33: .line 344
            goto 36
        34: .line 341
      StackMap locals:
      StackMap stack:
            iinc 10 /* fileSim */ 1
      StackMap locals:
      StackMap stack:
        35: iload 10 /* fileSim */
            iload 8 /* fileMin */
            if_icmplt 30
        36: .line 346
      StackMap locals:
      StackMap stack:
            iload 10 /* fileSim */
            bipush 100
            imul
            iload 9 /* fileMax */
            idiv
            istore 11 /* fileScore */
        start local 11 // int fileScore
        37: .line 348
            iload 6 /* dirScoreLtr */
            iload 7 /* dirScoreRtl */
            iadd
            bipush 25
            imul
            iload 11 /* fileScore */
            bipush 50
            imul
            iadd
            bipush 100
            idiv
            ireturn
        end local 11 // int fileScore
        end local 10 // int fileSim
        end local 9 // int fileMax
        end local 8 // int fileMin
        end local 7 // int dirScoreRtl
        end local 6 // int dirScoreLtr
        end local 5 // int dirMax
        end local 4 // int dirMin
        end local 3 // int bDirLen
        end local 2 // int aDirLen
        end local 1 // java.lang.String b
        end local 0 // java.lang.String a
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   38     0            a  Ljava/lang/String;
            0   38     1            b  Ljava/lang/String;
            1   38     2      aDirLen  I
            2   38     3      bDirLen  I
            3   38     4       dirMin  I
            4   38     5       dirMax  I
            6    8     6  dirScoreLtr  I
           15   38     6  dirScoreLtr  I
            7    8     7  dirScoreRtl  I
           17   18     7  dirScoreRtl  I
           26   38     7  dirScoreRtl  I
            9   26     8       dirSim  I
           27   38     8      fileMin  I
           28   38     9      fileMax  I
           29   38    10      fileSim  I
           37   38    11    fileScore  I
    MethodParameters:
      Name  Flags
      a     
      b     

  private org.eclipse.jgit.diff.SimilarityIndex hash(org.eclipse.jgit.diff.DiffEntry$Side, org.eclipse.jgit.diff.DiffEntry);
    descriptor: (Lorg/eclipse/jgit/diff/DiffEntry$Side;Lorg/eclipse/jgit/diff/DiffEntry;)Lorg/eclipse/jgit/diff/SimilarityIndex;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
        start local 1 // org.eclipse.jgit.diff.DiffEntry$Side side
        start local 2 // org.eclipse.jgit.diff.DiffEntry ent
         0: .line 353
            new org.eclipse.jgit.diff.SimilarityIndex
            dup
            invokespecial org.eclipse.jgit.diff.SimilarityIndex.<init>:()V
            astore 3 /* r */
        start local 3 // org.eclipse.jgit.diff.SimilarityIndex r
         1: .line 354
            aload 3 /* r */
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.reader:Lorg/eclipse/jgit/diff/ContentSource$Pair;
            aload 1 /* side */
            aload 2 /* ent */
            invokevirtual org.eclipse.jgit.diff.ContentSource$Pair.open:(Lorg/eclipse/jgit/diff/DiffEntry$Side;Lorg/eclipse/jgit/diff/DiffEntry;)Lorg/eclipse/jgit/lib/ObjectLoader;
            invokevirtual org.eclipse.jgit.diff.SimilarityIndex.hash:(Lorg/eclipse/jgit/lib/ObjectLoader;)V
         2: .line 355
            aload 3 /* r */
            invokevirtual org.eclipse.jgit.diff.SimilarityIndex.sort:()V
         3: .line 356
            aload 3 /* r */
            areturn
        end local 3 // org.eclipse.jgit.diff.SimilarityIndex r
        end local 2 // org.eclipse.jgit.diff.DiffEntry ent
        end local 1 // org.eclipse.jgit.diff.DiffEntry$Side side
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;
            0    4     1  side  Lorg/eclipse/jgit/diff/DiffEntry$Side;
            0    4     2   ent  Lorg/eclipse/jgit/diff/DiffEntry;
            1    4     3     r  Lorg/eclipse/jgit/diff/SimilarityIndex;
    Exceptions:
      throws java.io.IOException, org.eclipse.jgit.diff.SimilarityIndex$TableFullException
    MethodParameters:
      Name  Flags
      side  
      ent   

  private long size(org.eclipse.jgit.diff.DiffEntry$Side, org.eclipse.jgit.diff.DiffEntry);
    descriptor: (Lorg/eclipse/jgit/diff/DiffEntry$Side;Lorg/eclipse/jgit/diff/DiffEntry;)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
        start local 1 // org.eclipse.jgit.diff.DiffEntry$Side side
        start local 2 // org.eclipse.jgit.diff.DiffEntry ent
         0: .line 360
            aload 0 /* this */
            getfield org.eclipse.jgit.diff.SimilarityRenameDetector.reader:Lorg/eclipse/jgit/diff/ContentSource$Pair;
            aload 1 /* side */
            aload 2 /* ent */
            invokevirtual org.eclipse.jgit.diff.ContentSource$Pair.size:(Lorg/eclipse/jgit/diff/DiffEntry$Side;Lorg/eclipse/jgit/diff/DiffEntry;)J
            lreturn
        end local 2 // org.eclipse.jgit.diff.DiffEntry ent
        end local 1 // org.eclipse.jgit.diff.DiffEntry$Side side
        end local 0 // org.eclipse.jgit.diff.SimilarityRenameDetector this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jgit/diff/SimilarityRenameDetector;
            0    1     1  side  Lorg/eclipse/jgit/diff/DiffEntry$Side;
            0    1     2   ent  Lorg/eclipse/jgit/diff/DiffEntry;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      side  
      ent   

  private static int score(long);
    descriptor: (J)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // long value
         0: .line 364
            lload 0 /* value */
            bipush 56
            lushr
            l2i
            ireturn
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  value  J
    MethodParameters:
       Name  Flags
      value  

  static int srcFile(long);
    descriptor: (J)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // long value
         0: .line 368
            lload 0 /* value */
            bipush 28
            lushr
            l2i
            ldc 268435455
            iand
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.decodeFile:(I)I
            ireturn
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  value  J
    MethodParameters:
       Name  Flags
      value  

  static int dstFile(long);
    descriptor: (J)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // long value
         0: .line 372
            lload 0 /* value */
            l2i
            ldc 268435455
            iand
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.decodeFile:(I)I
            ireturn
        end local 0 // long value
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  value  J
    MethodParameters:
       Name  Flags
      value  

  static long encode(int, int, int);
    descriptor: (III)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // int score
        start local 1 // int srcIdx
        start local 2 // int dstIdx
         0: .line 376
            iload 0 /* score */
            i2l
            bipush 56
            lshl
         1: .line 377
            iload 1 /* srcIdx */
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.encodeFile:(I)J
            bipush 28
            lshl
         2: .line 376
            lor
         3: .line 378
            iload 2 /* dstIdx */
            invokestatic org.eclipse.jgit.diff.SimilarityRenameDetector.encodeFile:(I)J
         4: .line 376
            lor
            lreturn
        end local 2 // int dstIdx
        end local 1 // int srcIdx
        end local 0 // int score
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0   score  I
            0    5     1  srcIdx  I
            0    5     2  dstIdx  I
    MethodParameters:
        Name  Flags
      score   
      srcIdx  
      dstIdx  

  private static long encodeFile(int);
    descriptor: (I)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int idx
         0: .line 386
            ldc 268435455
            iload 0 /* idx */
            isub
            i2l
            lreturn
        end local 0 // int idx
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   idx  I
    MethodParameters:
      Name  Flags
      idx   

  private static int decodeFile(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int v
         0: .line 390
            ldc 268435455
            iload 0 /* v */
            isub
            ireturn
        end local 0 // int v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     v  I
    MethodParameters:
      Name  Flags
      v     

  private static boolean isFile(org.eclipse.jgit.lib.FileMode);
    descriptor: (Lorg/eclipse/jgit/lib/FileMode;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.lib.FileMode mode
         0: .line 394
            aload 0 /* mode */
            invokevirtual org.eclipse.jgit.lib.FileMode.getBits:()I
            ldc 61440
            iand
            ldc 32768
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.eclipse.jgit.lib.FileMode mode
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  mode  Lorg/eclipse/jgit/lib/FileMode;
    MethodParameters:
      Name  Flags
      mode  
}
SourceFile: "SimilarityRenameDetector.java"
InnerClasses:
  public final Pair = org.eclipse.jgit.diff.ContentSource$Pair of org.eclipse.jgit.diff.ContentSource
  public final ChangeType = org.eclipse.jgit.diff.DiffEntry$ChangeType of org.eclipse.jgit.diff.DiffEntry
  public final Side = org.eclipse.jgit.diff.DiffEntry$Side of org.eclipse.jgit.diff.DiffEntry
  public TableFullException = org.eclipse.jgit.diff.SimilarityIndex$TableFullException of org.eclipse.jgit.diff.SimilarityIndex