public class org.eclipse.jgit.api.CloneCommand extends org.eclipse.jgit.api.TransportCommand<org.eclipse.jgit.api.CloneCommand, org.eclipse.jgit.api.Git>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jgit.api.CloneCommand
  super_class: org.eclipse.jgit.api.TransportCommand
{
  private java.lang.String uri;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.io.File directory;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

  private java.io.File gitDir;
    descriptor: Ljava/io/File;
    flags: (0x0002) ACC_PRIVATE

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

  private org.eclipse.jgit.util.FS fs;
    descriptor: Lorg/eclipse/jgit/util/FS;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String remote;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String branch;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jgit.lib.ProgressMonitor monitor;
    descriptor: Lorg/eclipse/jgit/lib/ProgressMonitor;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

  private java.util.Collection<java.lang.String> branchesToClone;
    descriptor: Ljava/util/Collection;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Collection<Ljava/lang/String;>;

  private org.eclipse.jgit.api.CloneCommand$Callback callback;
    descriptor: Lorg/eclipse/jgit/api/CloneCommand$Callback;
    flags: (0x0002) ACC_PRIVATE

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

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

  private org.eclipse.jgit.api.CloneCommand$FETCH_TYPE fetchType;
    descriptor: Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
    flags: (0x0002) ACC_PRIVATE

  private org.eclipse.jgit.transport.TagOpt tagOption;
    descriptor: Lorg/eclipse/jgit/transport/TagOpt;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.api.CloneCommand this
         0: .line 136
            aload 0 /* this */
            aconst_null
            invokespecial org.eclipse.jgit.api.TransportCommand.<init>:(Lorg/eclipse/jgit/lib/Repository;)V
         1: .line 68
            aload 0 /* this */
            ldc "origin"
            putfield org.eclipse.jgit.api.CloneCommand.remote:Ljava/lang/String;
         2: .line 70
            aload 0 /* this */
            ldc "HEAD"
            putfield org.eclipse.jgit.api.CloneCommand.branch:Ljava/lang/String;
         3: .line 72
            aload 0 /* this */
            getstatic org.eclipse.jgit.lib.NullProgressMonitor.INSTANCE:Lorg/eclipse/jgit/lib/NullProgressMonitor;
            putfield org.eclipse.jgit.api.CloneCommand.monitor:Lorg/eclipse/jgit/lib/ProgressMonitor;
         4: .line 137
            return
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/eclipse/jgit/api/CloneCommand;

  java.io.File getDirectory();
    descriptor: ()Ljava/io/File;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.api.CloneCommand this
         0: .line 146
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            areturn
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jgit/api/CloneCommand;
    RuntimeVisibleAnnotations: 
      org.eclipse.jgit.annotations.Nullable()

  public org.eclipse.jgit.api.Git call();
    descriptor: ()Lorg/eclipse/jgit/api/Git;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=1
        start local 0 // org.eclipse.jgit.api.CloneCommand this
         0: .line 163
            aconst_null
            astore 1 /* u */
        start local 1 // org.eclipse.jgit.transport.URIish u
         1: .line 165
            new org.eclipse.jgit.transport.URIish
            dup
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.uri:Ljava/lang/String;
            invokespecial org.eclipse.jgit.transport.URIish.<init>:(Ljava/lang/String;)V
            astore 1 /* u */
         2: .line 166
            aload 0 /* this */
            aload 1 /* u */
            invokevirtual org.eclipse.jgit.api.CloneCommand.verifyDirectories:(Lorg/eclipse/jgit/transport/URIish;)V
         3: .line 167
            goto 8
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.URIish
      StackMap stack: java.net.URISyntaxException
         4: astore 2 /* e */
        start local 2 // java.net.URISyntaxException e
         5: .line 168
            new org.eclipse.jgit.api.errors.InvalidRemoteException
            dup
         6: .line 169
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.invalidURL:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.uri:Ljava/lang/String;
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            aload 2 /* e */
         7: .line 168
            invokespecial org.eclipse.jgit.api.errors.InvalidRemoteException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.net.URISyntaxException e
         8: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jgit.api.CloneCommand.setFetchType:()V
         9: .line 173
            aload 0 /* this */
            invokevirtual org.eclipse.jgit.api.CloneCommand.init:()Lorg/eclipse/jgit/lib/Repository;
            astore 2 /* repository */
        start local 2 // org.eclipse.jgit.lib.Repository repository
        10: .line 174
            aconst_null
            astore 3 /* fetchResult */
        start local 3 // org.eclipse.jgit.transport.FetchResult fetchResult
        11: .line 175
            new java.lang.Thread
            dup
            aload 0 /* this */
            invokedynamic run(Lorg/eclipse/jgit/api/CloneCommand;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  org/eclipse/jgit/api/CloneCommand.lambda$0()V (7)
                  ()V
            invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;)V
            astore 4 /* cleanupHook */
        start local 4 // java.lang.Thread cleanupHook
        12: .line 176
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 4 /* cleanupHook */
            invokevirtual java.lang.Runtime.addShutdownHook:(Ljava/lang/Thread;)V
        13: .line 178
            aload 0 /* this */
            aload 2 /* repository */
            aload 1 /* u */
            invokevirtual org.eclipse.jgit.api.CloneCommand.fetch:(Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/transport/URIish;)Lorg/eclipse/jgit/transport/FetchResult;
            astore 3 /* fetchResult */
        14: .line 179
            goto 36
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.URIish org.eclipse.jgit.lib.Repository org.eclipse.jgit.transport.FetchResult java.lang.Thread
      StackMap stack: java.io.IOException
        15: astore 5 /* ioe */
        start local 5 // java.io.IOException ioe
        16: .line 180
            aload 2 /* repository */
            ifnull 18
        17: .line 181
            aload 2 /* repository */
            invokevirtual org.eclipse.jgit.lib.Repository.close:()V
        18: .line 183
      StackMap locals: java.io.IOException
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jgit.api.CloneCommand.cleanup:()V
        19: .line 184
            new org.eclipse.jgit.api.errors.JGitInternalException
            dup
            aload 5 /* ioe */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            aload 5 /* ioe */
            invokespecial org.eclipse.jgit.api.errors.JGitInternalException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.io.IOException ioe
        20: .line 185
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.URIish org.eclipse.jgit.lib.Repository org.eclipse.jgit.transport.FetchResult java.lang.Thread
      StackMap stack: java.net.URISyntaxException
            astore 5 /* e */
        start local 5 // java.net.URISyntaxException e
        21: .line 186
            aload 2 /* repository */
            ifnull 23
        22: .line 187
            aload 2 /* repository */
            invokevirtual org.eclipse.jgit.lib.Repository.close:()V
        23: .line 189
      StackMap locals: java.net.URISyntaxException
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jgit.api.CloneCommand.cleanup:()V
        24: .line 190
            new org.eclipse.jgit.api.errors.InvalidRemoteException
            dup
        25: .line 191
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.invalidRemote:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.remote:Ljava/lang/String;
            aastore
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
        26: .line 192
            aload 5 /* e */
        27: .line 190
            invokespecial org.eclipse.jgit.api.errors.InvalidRemoteException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.net.URISyntaxException e
        28: .line 193
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.URIish org.eclipse.jgit.lib.Repository org.eclipse.jgit.transport.FetchResult java.lang.Thread
      StackMap stack: java.lang.Exception
            astore 5 /* e */
        start local 5 // java.lang.Exception e
        29: .line 194
            aload 2 /* repository */
            ifnull 31
        30: .line 195
            aload 2 /* repository */
            invokevirtual org.eclipse.jgit.lib.Repository.close:()V
        31: .line 197
      StackMap locals: java.lang.Exception
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jgit.api.CloneCommand.cleanup:()V
        32: .line 198
            aload 5 /* e */
            athrow
        end local 5 // java.lang.Exception e
        33: .line 199
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.URIish org.eclipse.jgit.lib.Repository org.eclipse.jgit.transport.FetchResult java.lang.Thread
      StackMap stack: java.lang.Throwable
            astore 6
        34: .line 200
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 4 /* cleanupHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        35: .line 201
            aload 6
            athrow
        36: .line 200
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            aload 4 /* cleanupHook */
            invokevirtual java.lang.Runtime.removeShutdownHook:(Ljava/lang/Thread;)Z
            pop
        37: .line 202
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.noCheckout:Z
            ifne 46
        38: .line 204
            aload 0 /* this */
            aload 2 /* repository */
            aload 3 /* fetchResult */
            invokevirtual org.eclipse.jgit.api.CloneCommand.checkout:(Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/transport/FetchResult;)V
        39: .line 205
            goto 46
      StackMap locals:
      StackMap stack: java.io.IOException
        40: astore 5 /* ioe */
        start local 5 // java.io.IOException ioe
        41: .line 206
            aload 2 /* repository */
            invokevirtual org.eclipse.jgit.lib.Repository.close:()V
        42: .line 207
            new org.eclipse.jgit.api.errors.JGitInternalException
            dup
            aload 5 /* ioe */
            invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
            aload 5 /* ioe */
            invokespecial org.eclipse.jgit.api.errors.JGitInternalException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.io.IOException ioe
        43: .line 208
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 5 /* e */
        start local 5 // java.lang.Exception e
        44: .line 209
            aload 2 /* repository */
            invokevirtual org.eclipse.jgit.lib.Repository.close:()V
        45: .line 210
            aload 5 /* e */
            athrow
        end local 5 // java.lang.Exception e
        46: .line 213
      StackMap locals:
      StackMap stack:
            new org.eclipse.jgit.api.Git
            dup
            aload 2 /* repository */
            iconst_1
            invokespecial org.eclipse.jgit.api.Git.<init>:(Lorg/eclipse/jgit/lib/Repository;Z)V
            areturn
        end local 4 // java.lang.Thread cleanupHook
        end local 3 // org.eclipse.jgit.transport.FetchResult fetchResult
        end local 2 // org.eclipse.jgit.lib.Repository repository
        end local 1 // org.eclipse.jgit.transport.URIish u
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   47     0         this  Lorg/eclipse/jgit/api/CloneCommand;
            1   47     1            u  Lorg/eclipse/jgit/transport/URIish;
            5    8     2            e  Ljava/net/URISyntaxException;
           10   47     2   repository  Lorg/eclipse/jgit/lib/Repository;
           11   47     3  fetchResult  Lorg/eclipse/jgit/transport/FetchResult;
           12   47     4  cleanupHook  Ljava/lang/Thread;
           16   20     5          ioe  Ljava/io/IOException;
           21   28     5            e  Ljava/net/URISyntaxException;
           29   33     5            e  Ljava/lang/Exception;
           41   43     5          ioe  Ljava/io/IOException;
           44   46     5            e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     3       4  Class java.net.URISyntaxException
          13    14      15  Class java.io.IOException
          13    14      20  Class java.net.URISyntaxException
          13    14      28  Class org.eclipse.jgit.api.errors.GitAPIException
          13    14      28  Class java.lang.RuntimeException
          13    33      33  any
          38    39      40  Class java.io.IOException
          38    39      43  Class org.eclipse.jgit.api.errors.GitAPIException
          38    39      43  Class java.lang.RuntimeException
    Exceptions:
      throws org.eclipse.jgit.api.errors.GitAPIException, org.eclipse.jgit.api.errors.InvalidRemoteException, org.eclipse.jgit.api.errors.TransportException

  private void setFetchType();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.api.CloneCommand this
         0: .line 217
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.mirror:Z
            ifeq 4
         1: .line 218
            aload 0 /* this */
            getstatic org.eclipse.jgit.api.CloneCommand$FETCH_TYPE.MIRROR:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            putfield org.eclipse.jgit.api.CloneCommand.fetchType:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
         2: .line 219
            aload 0 /* this */
            iconst_1
            invokevirtual org.eclipse.jgit.api.CloneCommand.setBare:(Z)Lorg/eclipse/jgit/api/CloneCommand;
            pop
         3: .line 220
            goto 11
      StackMap locals:
      StackMap stack:
         4: aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.cloneAllBranches:Z
            ifeq 7
         5: .line 221
            aload 0 /* this */
            getstatic org.eclipse.jgit.api.CloneCommand$FETCH_TYPE.ALL_BRANCHES:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            putfield org.eclipse.jgit.api.CloneCommand.fetchType:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
         6: .line 222
            goto 11
      StackMap locals:
      StackMap stack:
         7: aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.branchesToClone:Ljava/util/Collection;
            ifnull 10
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.branchesToClone:Ljava/util/Collection;
            invokeinterface java.util.Collection.isEmpty:()Z
            ifne 10
         8: .line 223
            aload 0 /* this */
            getstatic org.eclipse.jgit.api.CloneCommand$FETCH_TYPE.MULTIPLE_BRANCHES:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            putfield org.eclipse.jgit.api.CloneCommand.fetchType:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
         9: .line 224
            goto 11
        10: .line 226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.eclipse.jgit.api.CloneCommand$FETCH_TYPE.ALL_BRANCHES:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            putfield org.eclipse.jgit.api.CloneCommand.fetchType:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
        11: .line 228
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lorg/eclipse/jgit/api/CloneCommand;

  private static boolean isNonEmptyDirectory(java.io.File);
    descriptor: (Ljava/io/File;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // java.io.File dir
         0: .line 231
            aload 0 /* dir */
            ifnull 4
            aload 0 /* dir */
            invokevirtual java.io.File.exists:()Z
            ifeq 4
         1: .line 232
            aload 0 /* dir */
            invokevirtual java.io.File.listFiles:()[Ljava/io/File;
            astore 1 /* files */
        start local 1 // java.io.File[] files
         2: .line 233
            aload 1 /* files */
            ifnull 3
            aload 1 /* files */
            arraylength
            ifeq 3
            iconst_1
            ireturn
      StackMap locals: java.io.File[]
      StackMap stack:
         3: iconst_0
            ireturn
        end local 1 // java.io.File[] files
         4: .line 235
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.io.File dir
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0    dir  Ljava/io/File;
            2    4     1  files  [Ljava/io/File;
    MethodParameters:
      Name  Flags
      dir   

  void verifyDirectories(org.eclipse.jgit.transport.URIish);
    descriptor: (Lorg/eclipse/jgit/transport/URIish;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.transport.URIish u
         0: .line 239
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            ifnonnull 5
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            ifnonnull 5
         1: .line 240
            aload 0 /* this */
         2: new java.io.File
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* u */
            invokevirtual org.eclipse.jgit.transport.URIish.getHumanishName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.bare:Z
            ifeq 3
            ldc ".git"
            goto 4
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.URIish
      StackMap stack: org.eclipse.jgit.api.CloneCommand new 2 new 2 java.lang.StringBuilder
         3: ldc ""
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.URIish
      StackMap stack: org.eclipse.jgit.api.CloneCommand new 2 new 2 java.lang.StringBuilder java.lang.String
         4: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            putfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
         5: .line 242
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            ifnull 6
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            ifeq 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack: org.eclipse.jgit.api.CloneCommand
         6: iconst_0
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.URIish
      StackMap stack: org.eclipse.jgit.api.CloneCommand int
         7: putfield org.eclipse.jgit.api.CloneCommand.directoryExistsInitially:Z
         8: .line 243
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            ifnull 9
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            invokevirtual java.io.File.exists:()Z
            ifeq 9
            iconst_1
            goto 10
      StackMap locals:
      StackMap stack: org.eclipse.jgit.api.CloneCommand
         9: iconst_0
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.URIish
      StackMap stack: org.eclipse.jgit.api.CloneCommand int
        10: putfield org.eclipse.jgit.api.CloneCommand.gitDirExistsInitially:Z
        11: .line 244
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.bare:Z
            invokestatic org.eclipse.jgit.api.CloneCommand.validateDirs:(Ljava/io/File;Ljava/io/File;Z)V
        12: .line 245
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            invokestatic org.eclipse.jgit.api.CloneCommand.isNonEmptyDirectory:(Ljava/io/File;)Z
            ifeq 16
        13: .line 246
            new org.eclipse.jgit.api.errors.JGitInternalException
            dup
        14: .line 247
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.cloneNonEmptyDirectory:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            aastore
        15: .line 246
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jgit.api.errors.JGitInternalException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 249
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            invokestatic org.eclipse.jgit.api.CloneCommand.isNonEmptyDirectory:(Ljava/io/File;)Z
            ifeq 20
        17: .line 250
            new org.eclipse.jgit.api.errors.JGitInternalException
            dup
        18: .line 251
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.cloneNonEmptyDirectory:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            invokevirtual java.io.File.getName:()Ljava/lang/String;
            aastore
        19: .line 250
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial org.eclipse.jgit.api.errors.JGitInternalException.<init>:(Ljava/lang/String;)V
            athrow
        20: .line 253
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.eclipse.jgit.transport.URIish u
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0  this  Lorg/eclipse/jgit/api/CloneCommand;
            0   21     1     u  Lorg/eclipse/jgit/transport/URIish;
    MethodParameters:
      Name  Flags
      u     

  private org.eclipse.jgit.lib.Repository init();
    descriptor: ()Lorg/eclipse/jgit/lib/Repository;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.eclipse.jgit.api.CloneCommand this
         0: .line 256
            invokestatic org.eclipse.jgit.api.Git.init:()Lorg/eclipse/jgit/api/InitCommand;
            astore 1 /* command */
        start local 1 // org.eclipse.jgit.api.InitCommand command
         1: .line 257
            aload 1 /* command */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.bare:Z
            invokevirtual org.eclipse.jgit.api.InitCommand.setBare:(Z)Lorg/eclipse/jgit/api/InitCommand;
            pop
         2: .line 258
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.fs:Lorg/eclipse/jgit/util/FS;
            ifnull 4
         3: .line 259
            aload 1 /* command */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.fs:Lorg/eclipse/jgit/util/FS;
            invokevirtual org.eclipse.jgit.api.InitCommand.setFs:(Lorg/eclipse/jgit/util/FS;)Lorg/eclipse/jgit/api/InitCommand;
            pop
         4: .line 261
      StackMap locals: org.eclipse.jgit.api.InitCommand
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            ifnull 6
         5: .line 262
            aload 1 /* command */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            invokevirtual org.eclipse.jgit.api.InitCommand.setDirectory:(Ljava/io/File;)Lorg/eclipse/jgit/api/InitCommand;
            pop
         6: .line 264
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            ifnull 8
         7: .line 265
            aload 1 /* command */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            invokevirtual org.eclipse.jgit.api.InitCommand.setGitDir:(Ljava/io/File;)Lorg/eclipse/jgit/api/InitCommand;
            pop
         8: .line 267
      StackMap locals:
      StackMap stack:
            aload 1 /* command */
            invokevirtual org.eclipse.jgit.api.InitCommand.call:()Lorg/eclipse/jgit/api/Git;
            invokevirtual org.eclipse.jgit.api.Git.getRepository:()Lorg/eclipse/jgit/lib/Repository;
            areturn
        end local 1 // org.eclipse.jgit.api.InitCommand command
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/eclipse/jgit/api/CloneCommand;
            1    9     1  command  Lorg/eclipse/jgit/api/InitCommand;
    Exceptions:
      throws org.eclipse.jgit.api.errors.GitAPIException

  private org.eclipse.jgit.transport.FetchResult fetch(org.eclipse.jgit.lib.Repository, org.eclipse.jgit.transport.URIish);
    descriptor: (Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/transport/URIish;)Lorg/eclipse/jgit/transport/FetchResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.lib.Repository clonedRepo
        start local 2 // org.eclipse.jgit.transport.URIish u
         0: .line 275
            new org.eclipse.jgit.transport.RemoteConfig
            dup
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.getConfig:()Lorg/eclipse/jgit/lib/StoredConfig;
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.remote:Ljava/lang/String;
            invokespecial org.eclipse.jgit.transport.RemoteConfig.<init>:(Lorg/eclipse/jgit/lib/Config;Ljava/lang/String;)V
            astore 3 /* config */
        start local 3 // org.eclipse.jgit.transport.RemoteConfig config
         1: .line 276
            aload 3 /* config */
            aload 2 /* u */
            invokevirtual org.eclipse.jgit.transport.RemoteConfig.addURI:(Lorg/eclipse/jgit/transport/URIish;)Z
            pop
         2: .line 278
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.fetchType:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            getstatic org.eclipse.jgit.api.CloneCommand$FETCH_TYPE.ALL_BRANCHES:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            if_acmpeq 5
         3: .line 279
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.fetchType:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            getstatic org.eclipse.jgit.api.CloneCommand$FETCH_TYPE.MIRROR:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            if_acmpeq 5
         4: .line 278
            iconst_0
            goto 6
      StackMap locals: org.eclipse.jgit.transport.RemoteConfig
      StackMap stack:
         5: iconst_1
      StackMap locals:
      StackMap stack: int
         6: istore 4 /* fetchAll */
        start local 4 // boolean fetchAll
         7: .line 281
            aload 3 /* config */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.fetchType:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            aload 3 /* config */
            invokevirtual org.eclipse.jgit.transport.RemoteConfig.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jgit.api.CloneCommand.calculateRefSpecs:(Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;Ljava/lang/String;)Ljava/util/List;
            invokevirtual org.eclipse.jgit.transport.RemoteConfig.setFetchRefSpecs:(Ljava/util/List;)V
         8: .line 282
            aload 3 /* config */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.fetchType:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            getstatic org.eclipse.jgit.api.CloneCommand$FETCH_TYPE.MIRROR:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            if_acmpne 9
            iconst_1
            goto 10
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.lib.Repository org.eclipse.jgit.transport.URIish org.eclipse.jgit.transport.RemoteConfig int
      StackMap stack: org.eclipse.jgit.transport.RemoteConfig
         9: iconst_0
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.lib.Repository org.eclipse.jgit.transport.URIish org.eclipse.jgit.transport.RemoteConfig int
      StackMap stack: org.eclipse.jgit.transport.RemoteConfig int
        10: invokevirtual org.eclipse.jgit.transport.RemoteConfig.setMirror:(Z)V
        11: .line 283
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.tagOption:Lorg/eclipse/jgit/transport/TagOpt;
            ifnull 13
        12: .line 284
            aload 3 /* config */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.tagOption:Lorg/eclipse/jgit/transport/TagOpt;
            invokevirtual org.eclipse.jgit.transport.RemoteConfig.setTagOpt:(Lorg/eclipse/jgit/transport/TagOpt;)V
        13: .line 286
      StackMap locals:
      StackMap stack:
            aload 3 /* config */
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.getConfig:()Lorg/eclipse/jgit/lib/StoredConfig;
            invokevirtual org.eclipse.jgit.transport.RemoteConfig.update:(Lorg/eclipse/jgit/lib/Config;)V
        14: .line 288
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.getConfig:()Lorg/eclipse/jgit/lib/StoredConfig;
            invokevirtual org.eclipse.jgit.lib.StoredConfig.save:()V
        15: .line 291
            new org.eclipse.jgit.api.FetchCommand
            dup
            aload 1 /* clonedRepo */
            invokespecial org.eclipse.jgit.api.FetchCommand.<init>:(Lorg/eclipse/jgit/lib/Repository;)V
            astore 5 /* command */
        start local 5 // org.eclipse.jgit.api.FetchCommand command
        16: .line 292
            aload 5 /* command */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.remote:Ljava/lang/String;
            invokevirtual org.eclipse.jgit.api.FetchCommand.setRemote:(Ljava/lang/String;)Lorg/eclipse/jgit/api/FetchCommand;
            pop
        17: .line 293
            aload 5 /* command */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.monitor:Lorg/eclipse/jgit/lib/ProgressMonitor;
            invokevirtual org.eclipse.jgit.api.FetchCommand.setProgressMonitor:(Lorg/eclipse/jgit/lib/ProgressMonitor;)Lorg/eclipse/jgit/api/FetchCommand;
            pop
        18: .line 294
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.tagOption:Lorg/eclipse/jgit/transport/TagOpt;
            ifnull 21
        19: .line 295
            aload 5 /* command */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.tagOption:Lorg/eclipse/jgit/transport/TagOpt;
            invokevirtual org.eclipse.jgit.api.FetchCommand.setTagOpt:(Lorg/eclipse/jgit/transport/TagOpt;)Lorg/eclipse/jgit/api/FetchCommand;
            pop
        20: .line 296
            goto 25
        21: .line 297
      StackMap locals: org.eclipse.jgit.api.FetchCommand
      StackMap stack:
            aload 5 /* command */
        22: .line 298
            iload 4 /* fetchAll */
            ifeq 23
            getstatic org.eclipse.jgit.transport.TagOpt.FETCH_TAGS:Lorg/eclipse/jgit/transport/TagOpt;
            goto 24
      StackMap locals:
      StackMap stack: org.eclipse.jgit.api.FetchCommand
        23: getstatic org.eclipse.jgit.transport.TagOpt.AUTO_FOLLOW:Lorg/eclipse/jgit/transport/TagOpt;
        24: .line 297
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.lib.Repository org.eclipse.jgit.transport.URIish org.eclipse.jgit.transport.RemoteConfig int org.eclipse.jgit.api.FetchCommand
      StackMap stack: org.eclipse.jgit.api.FetchCommand org.eclipse.jgit.transport.TagOpt
            invokevirtual org.eclipse.jgit.api.FetchCommand.setTagOpt:(Lorg/eclipse/jgit/transport/TagOpt;)Lorg/eclipse/jgit/api/FetchCommand;
            pop
        25: .line 300
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* command */
            invokevirtual org.eclipse.jgit.api.CloneCommand.configure:(Lorg/eclipse/jgit/api/TransportCommand;)Lorg/eclipse/jgit/api/GitCommand;
            pop
        26: .line 302
            aload 5 /* command */
            invokevirtual org.eclipse.jgit.api.FetchCommand.call:()Lorg/eclipse/jgit/transport/FetchResult;
            areturn
        end local 5 // org.eclipse.jgit.api.FetchCommand command
        end local 4 // boolean fetchAll
        end local 3 // org.eclipse.jgit.transport.RemoteConfig config
        end local 2 // org.eclipse.jgit.transport.URIish u
        end local 1 // org.eclipse.jgit.lib.Repository clonedRepo
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   27     0        this  Lorg/eclipse/jgit/api/CloneCommand;
            0   27     1  clonedRepo  Lorg/eclipse/jgit/lib/Repository;
            0   27     2           u  Lorg/eclipse/jgit/transport/URIish;
            1   27     3      config  Lorg/eclipse/jgit/transport/RemoteConfig;
            7   27     4    fetchAll  Z
           16   27     5     command  Lorg/eclipse/jgit/api/FetchCommand;
    Exceptions:
      throws java.net.URISyntaxException, org.eclipse.jgit.api.errors.TransportException, java.io.IOException, org.eclipse.jgit.api.errors.GitAPIException
    MethodParameters:
            Name  Flags
      clonedRepo  
      u           

  private java.util.List<org.eclipse.jgit.transport.RefSpec> calculateRefSpecs(org.eclipse.jgit.api.CloneCommand$FETCH_TYPE, java.lang.String);
    descriptor: (Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;Ljava/lang/String;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.api.CloneCommand$FETCH_TYPE type
        start local 2 // java.lang.String remoteName
         0: .line 307
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 3 /* specs */
        start local 3 // java.util.List specs
         1: .line 308
            aload 1 /* type */
            getstatic org.eclipse.jgit.api.CloneCommand$FETCH_TYPE.MIRROR:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            if_acmpne 6
         2: .line 309
            aload 3 /* specs */
            new org.eclipse.jgit.transport.RefSpec
            dup
            invokespecial org.eclipse.jgit.transport.RefSpec.<init>:()V
            iconst_1
            invokevirtual org.eclipse.jgit.transport.RefSpec.setForceUpdate:(Z)Lorg/eclipse/jgit/transport/RefSpec;
         3: .line 310
            ldc "refs/*"
            ldc "refs/*"
         4: .line 309
            invokevirtual org.eclipse.jgit.transport.RefSpec.setSourceDestination:(Ljava/lang/String;Ljava/lang/String;)Lorg/eclipse/jgit/transport/RefSpec;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 311
            goto 29
         6: .line 312
      StackMap locals: java.util.List
      StackMap stack:
            new org.eclipse.jgit.transport.RefSpec
            dup
            invokespecial org.eclipse.jgit.transport.RefSpec.<init>:()V
            astore 4 /* heads */
        start local 4 // org.eclipse.jgit.transport.RefSpec heads
         7: .line 313
            aload 4 /* heads */
            iconst_1
            invokevirtual org.eclipse.jgit.transport.RefSpec.setForceUpdate:(Z)Lorg/eclipse/jgit/transport/RefSpec;
            astore 4 /* heads */
         8: .line 314
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.bare:Z
            ifeq 9
            ldc "refs/heads/"
            goto 10
         9: .line 315
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.api.CloneCommand$FETCH_TYPE java.lang.String java.util.List org.eclipse.jgit.transport.RefSpec
      StackMap stack: new 8 new 8
            new java.lang.StringBuilder
            dup
            ldc "refs/remotes/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* remoteName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 47
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.api.CloneCommand$FETCH_TYPE java.lang.String java.util.List org.eclipse.jgit.transport.RefSpec
      StackMap stack: new 8 new 8 java.lang.String
        10: invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 42
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
        11: .line 314
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* dst */
        start local 5 // java.lang.String dst
        12: .line 316
            aload 4 /* heads */
            ldc "refs/heads/*"
            aload 5 /* dst */
            invokevirtual org.eclipse.jgit.transport.RefSpec.setSourceDestination:(Ljava/lang/String;Ljava/lang/String;)Lorg/eclipse/jgit/transport/RefSpec;
            astore 4 /* heads */
        13: .line 317
            aload 1 /* type */
            getstatic org.eclipse.jgit.api.CloneCommand$FETCH_TYPE.MULTIPLE_BRANCHES:Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            if_acmpne 28
        14: .line 318
            new org.eclipse.jgit.transport.RefSpec
            dup
            invokespecial org.eclipse.jgit.transport.RefSpec.<init>:()V
            iconst_1
            invokevirtual org.eclipse.jgit.transport.RefSpec.setForceUpdate:(Z)Lorg/eclipse/jgit/transport/RefSpec;
        15: .line 319
            ldc "refs/tags/*"
        16: .line 320
            ldc "refs/tags/*"
        17: .line 319
            invokevirtual org.eclipse.jgit.transport.RefSpec.setSourceDestination:(Ljava/lang/String;Ljava/lang/String;)Lorg/eclipse/jgit/transport/RefSpec;
        18: .line 318
            astore 6 /* tags */
        start local 6 // org.eclipse.jgit.transport.RefSpec tags
        19: .line 321
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.branchesToClone:Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 8
            goto 26
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.api.CloneCommand$FETCH_TYPE java.lang.String java.util.List org.eclipse.jgit.transport.RefSpec java.lang.String org.eclipse.jgit.transport.RefSpec top java.util.Iterator
      StackMap stack:
        20: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 7 /* selectedRef */
        start local 7 // java.lang.String selectedRef
        21: .line 322
            aload 4 /* heads */
            aload 7 /* selectedRef */
            invokevirtual org.eclipse.jgit.transport.RefSpec.matchSource:(Ljava/lang/String;)Z
            ifeq 24
        22: .line 323
            aload 3 /* specs */
            aload 4 /* heads */
            aload 7 /* selectedRef */
            invokevirtual org.eclipse.jgit.transport.RefSpec.expandFromSource:(Ljava/lang/String;)Lorg/eclipse/jgit/transport/RefSpec;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        23: .line 324
            goto 26
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.api.CloneCommand$FETCH_TYPE java.lang.String java.util.List org.eclipse.jgit.transport.RefSpec java.lang.String org.eclipse.jgit.transport.RefSpec java.lang.String java.util.Iterator
      StackMap stack:
        24: aload 6 /* tags */
            aload 7 /* selectedRef */
            invokevirtual org.eclipse.jgit.transport.RefSpec.matchSource:(Ljava/lang/String;)Z
            ifeq 26
        25: .line 325
            aload 3 /* specs */
            aload 6 /* tags */
            aload 7 /* selectedRef */
            invokevirtual org.eclipse.jgit.transport.RefSpec.expandFromSource:(Ljava/lang/String;)Lorg/eclipse/jgit/transport/RefSpec;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.lang.String selectedRef
        26: .line 321
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.api.CloneCommand$FETCH_TYPE java.lang.String java.util.List org.eclipse.jgit.transport.RefSpec java.lang.String org.eclipse.jgit.transport.RefSpec top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        end local 6 // org.eclipse.jgit.transport.RefSpec tags
        27: .line 328
            goto 29
        28: .line 330
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.api.CloneCommand$FETCH_TYPE java.lang.String java.util.List org.eclipse.jgit.transport.RefSpec java.lang.String
      StackMap stack:
            aload 3 /* specs */
            aload 4 /* heads */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.lang.String dst
        end local 4 // org.eclipse.jgit.transport.RefSpec heads
        29: .line 333
      StackMap locals:
      StackMap stack:
            aload 3 /* specs */
            areturn
        end local 3 // java.util.List specs
        end local 2 // java.lang.String remoteName
        end local 1 // org.eclipse.jgit.api.CloneCommand$FETCH_TYPE type
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   30     0         this  Lorg/eclipse/jgit/api/CloneCommand;
            0   30     1         type  Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;
            0   30     2   remoteName  Ljava/lang/String;
            1   30     3        specs  Ljava/util/List<Lorg/eclipse/jgit/transport/RefSpec;>;
            7   29     4        heads  Lorg/eclipse/jgit/transport/RefSpec;
           12   29     5          dst  Ljava/lang/String;
           19   27     6         tags  Lorg/eclipse/jgit/transport/RefSpec;
           21   26     7  selectedRef  Ljava/lang/String;
    Signature: (Lorg/eclipse/jgit/api/CloneCommand$FETCH_TYPE;Ljava/lang/String;)Ljava/util/List<Lorg/eclipse/jgit/transport/RefSpec;>;
    MethodParameters:
            Name  Flags
      type        
      remoteName  

  private void checkout(org.eclipse.jgit.lib.Repository, org.eclipse.jgit.transport.FetchResult);
    descriptor: (Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/transport/FetchResult;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.lib.Repository clonedRepo
        start local 2 // org.eclipse.jgit.transport.FetchResult result
         0: .line 340
            aconst_null
            astore 3 /* head */
        start local 3 // org.eclipse.jgit.lib.Ref head
         1: .line 341
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.branch:Ljava/lang/String;
            ldc "HEAD"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         2: .line 342
            aload 0 /* this */
            aload 2 /* result */
            invokevirtual org.eclipse.jgit.api.CloneCommand.findBranchToCheckout:(Lorg/eclipse/jgit/transport/FetchResult;)Lorg/eclipse/jgit/lib/Ref;
            astore 4 /* foundBranch */
        start local 4 // org.eclipse.jgit.lib.Ref foundBranch
         3: .line 343
            aload 4 /* foundBranch */
            ifnull 5
         4: .line 344
            aload 4 /* foundBranch */
            astore 3 /* head */
        end local 4 // org.eclipse.jgit.lib.Ref foundBranch
         5: .line 346
      StackMap locals: org.eclipse.jgit.lib.Ref
      StackMap stack:
            aload 3 /* head */
            ifnonnull 11
         6: .line 347
            aload 2 /* result */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.branch:Ljava/lang/String;
            invokevirtual org.eclipse.jgit.transport.FetchResult.getAdvertisedRef:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
            astore 3 /* head */
         7: .line 348
            aload 3 /* head */
            ifnonnull 9
         8: .line 349
            aload 2 /* result */
            new java.lang.StringBuilder
            dup
            ldc "refs/heads/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.branch:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.eclipse.jgit.transport.FetchResult.getAdvertisedRef:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
            astore 3 /* head */
         9: .line 350
      StackMap locals:
      StackMap stack:
            aload 3 /* head */
            ifnonnull 11
        10: .line 351
            aload 2 /* result */
            new java.lang.StringBuilder
            dup
            ldc "refs/tags/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.branch:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.eclipse.jgit.transport.FetchResult.getAdvertisedRef:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
            astore 3 /* head */
        11: .line 354
      StackMap locals:
      StackMap stack:
            aload 3 /* head */
            ifnull 12
            aload 3 /* head */
            invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
            ifnonnull 13
        12: .line 355
      StackMap locals:
      StackMap stack:
            return
        13: .line 357
      StackMap locals:
      StackMap stack:
            aload 3 /* head */
            invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
            ldc "refs/heads/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 18
        14: .line 358
            aload 1 /* clonedRepo */
            ldc "HEAD"
            invokevirtual org.eclipse.jgit.lib.Repository.updateRef:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/RefUpdate;
            astore 4 /* newHead */
        start local 4 // org.eclipse.jgit.lib.RefUpdate newHead
        15: .line 359
            aload 4 /* newHead */
            invokevirtual org.eclipse.jgit.lib.RefUpdate.disableRefLog:()V
        16: .line 360
            aload 4 /* newHead */
            aload 3 /* head */
            invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
            invokevirtual org.eclipse.jgit.lib.RefUpdate.link:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/RefUpdate$Result;
            pop
        17: .line 361
            aload 0 /* this */
            aload 1 /* clonedRepo */
            aload 3 /* head */
            invokevirtual org.eclipse.jgit.api.CloneCommand.addMergeConfig:(Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/lib/Ref;)V
        end local 4 // org.eclipse.jgit.lib.RefUpdate newHead
        18: .line 364
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* clonedRepo */
            aload 3 /* head */
            invokevirtual org.eclipse.jgit.api.CloneCommand.parseCommit:(Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/lib/Ref;)Lorg/eclipse/jgit/revwalk/RevCommit;
            astore 4 /* commit */
        start local 4 // org.eclipse.jgit.revwalk.RevCommit commit
        19: .line 366
            aload 3 /* head */
            invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
            ldc "refs/heads/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 20
            iconst_0
            goto 21
      StackMap locals: org.eclipse.jgit.revwalk.RevCommit
      StackMap stack:
        20: iconst_1
      StackMap locals:
      StackMap stack: int
        21: istore 5 /* detached */
        start local 5 // boolean detached
        22: .line 367
            aload 1 /* clonedRepo */
            ldc "HEAD"
            iload 5 /* detached */
            invokevirtual org.eclipse.jgit.lib.Repository.updateRef:(Ljava/lang/String;Z)Lorg/eclipse/jgit/lib/RefUpdate;
            astore 6 /* u */
        start local 6 // org.eclipse.jgit.lib.RefUpdate u
        23: .line 368
            aload 6 /* u */
            aload 4 /* commit */
            invokevirtual org.eclipse.jgit.revwalk.RevCommit.getId:()Lorg/eclipse/jgit/lib/ObjectId;
            invokevirtual org.eclipse.jgit.lib.RefUpdate.setNewObjectId:(Lorg/eclipse/jgit/lib/AnyObjectId;)V
        24: .line 369
            aload 6 /* u */
            invokevirtual org.eclipse.jgit.lib.RefUpdate.forceUpdate:()Lorg/eclipse/jgit/lib/RefUpdate$Result;
            pop
        25: .line 371
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.bare:Z
            ifne 34
        26: .line 372
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.lockDirCache:()Lorg/eclipse/jgit/dircache/DirCache;
            astore 7 /* dc */
        start local 7 // org.eclipse.jgit.dircache.DirCache dc
        27: .line 373
            new org.eclipse.jgit.dircache.DirCacheCheckout
            dup
            aload 1 /* clonedRepo */
            aload 7 /* dc */
        28: .line 374
            aload 4 /* commit */
            invokevirtual org.eclipse.jgit.revwalk.RevCommit.getTree:()Lorg/eclipse/jgit/revwalk/RevTree;
        29: .line 373
            invokespecial org.eclipse.jgit.dircache.DirCacheCheckout.<init>:(Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/dircache/DirCache;Lorg/eclipse/jgit/lib/ObjectId;)V
            astore 8 /* co */
        start local 8 // org.eclipse.jgit.dircache.DirCacheCheckout co
        30: .line 375
            aload 8 /* co */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.monitor:Lorg/eclipse/jgit/lib/ProgressMonitor;
            invokevirtual org.eclipse.jgit.dircache.DirCacheCheckout.setProgressMonitor:(Lorg/eclipse/jgit/lib/ProgressMonitor;)V
        31: .line 376
            aload 8 /* co */
            invokevirtual org.eclipse.jgit.dircache.DirCacheCheckout.checkout:()Z
            pop
        32: .line 377
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.cloneSubmodules:Z
            ifeq 34
        33: .line 378
            aload 0 /* this */
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.api.CloneCommand.cloneSubmodules:(Lorg/eclipse/jgit/lib/Repository;)V
        end local 8 // org.eclipse.jgit.dircache.DirCacheCheckout co
        end local 7 // org.eclipse.jgit.dircache.DirCache dc
        34: .line 380
      StackMap locals: int org.eclipse.jgit.lib.RefUpdate
      StackMap stack:
            return
        end local 6 // org.eclipse.jgit.lib.RefUpdate u
        end local 5 // boolean detached
        end local 4 // org.eclipse.jgit.revwalk.RevCommit commit
        end local 3 // org.eclipse.jgit.lib.Ref head
        end local 2 // org.eclipse.jgit.transport.FetchResult result
        end local 1 // org.eclipse.jgit.lib.Repository clonedRepo
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   35     0         this  Lorg/eclipse/jgit/api/CloneCommand;
            0   35     1   clonedRepo  Lorg/eclipse/jgit/lib/Repository;
            0   35     2       result  Lorg/eclipse/jgit/transport/FetchResult;
            1   35     3         head  Lorg/eclipse/jgit/lib/Ref;
            3    5     4  foundBranch  Lorg/eclipse/jgit/lib/Ref;
           15   18     4      newHead  Lorg/eclipse/jgit/lib/RefUpdate;
           19   35     4       commit  Lorg/eclipse/jgit/revwalk/RevCommit;
           22   35     5     detached  Z
           23   35     6            u  Lorg/eclipse/jgit/lib/RefUpdate;
           27   34     7           dc  Lorg/eclipse/jgit/dircache/DirCache;
           30   34     8           co  Lorg/eclipse/jgit/dircache/DirCacheCheckout;
    Exceptions:
      throws org.eclipse.jgit.errors.MissingObjectException, org.eclipse.jgit.errors.IncorrectObjectTypeException, java.io.IOException, org.eclipse.jgit.api.errors.GitAPIException
    MethodParameters:
            Name  Flags
      clonedRepo  
      result      

  private void cloneSubmodules(org.eclipse.jgit.lib.Repository);
    descriptor: (Lorg/eclipse/jgit/lib/Repository;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=9, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.lib.Repository clonedRepo
         0: .line 384
            new org.eclipse.jgit.api.SubmoduleInitCommand
            dup
            aload 1 /* clonedRepo */
            invokespecial org.eclipse.jgit.api.SubmoduleInitCommand.<init>:(Lorg/eclipse/jgit/lib/Repository;)V
            astore 2 /* init */
        start local 2 // org.eclipse.jgit.api.SubmoduleInitCommand init
         1: .line 385
            aload 2 /* init */
            invokevirtual org.eclipse.jgit.api.SubmoduleInitCommand.call:()Ljava/util/Collection;
            astore 3 /* submodules */
        start local 3 // java.util.Collection submodules
         2: .line 386
            aload 3 /* submodules */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 4
         3: .line 387
            return
         4: .line 389
      StackMap locals: org.eclipse.jgit.api.SubmoduleInitCommand java.util.Collection
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.callback:Lorg/eclipse/jgit/api/CloneCommand$Callback;
            ifnull 6
         5: .line 390
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.callback:Lorg/eclipse/jgit/api/CloneCommand$Callback;
            aload 3 /* submodules */
            invokeinterface org.eclipse.jgit.api.CloneCommand$Callback.initializedSubmodules:(Ljava/util/Collection;)V
         6: .line 393
      StackMap locals:
      StackMap stack:
            new org.eclipse.jgit.api.SubmoduleUpdateCommand
            dup
            aload 1 /* clonedRepo */
            invokespecial org.eclipse.jgit.api.SubmoduleUpdateCommand.<init>:(Lorg/eclipse/jgit/lib/Repository;)V
            astore 4 /* update */
        start local 4 // org.eclipse.jgit.api.SubmoduleUpdateCommand update
         7: .line 394
            aload 0 /* this */
            aload 4 /* update */
            invokevirtual org.eclipse.jgit.api.CloneCommand.configure:(Lorg/eclipse/jgit/api/TransportCommand;)Lorg/eclipse/jgit/api/GitCommand;
            pop
         8: .line 395
            aload 4 /* update */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.monitor:Lorg/eclipse/jgit/lib/ProgressMonitor;
            invokevirtual org.eclipse.jgit.api.SubmoduleUpdateCommand.setProgressMonitor:(Lorg/eclipse/jgit/lib/ProgressMonitor;)Lorg/eclipse/jgit/api/SubmoduleUpdateCommand;
            pop
         9: .line 396
            aload 4 /* update */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.callback:Lorg/eclipse/jgit/api/CloneCommand$Callback;
            invokevirtual org.eclipse.jgit.api.SubmoduleUpdateCommand.setCallback:(Lorg/eclipse/jgit/api/CloneCommand$Callback;)Lorg/eclipse/jgit/api/SubmoduleUpdateCommand;
            pop
        10: .line 397
            aload 4 /* update */
            invokevirtual org.eclipse.jgit.api.SubmoduleUpdateCommand.call:()Ljava/util/Collection;
            invokeinterface java.util.Collection.isEmpty:()Z
            ifne 24
        11: .line 398
            aload 1 /* clonedRepo */
            invokestatic org.eclipse.jgit.submodule.SubmoduleWalk.forIndex:(Lorg/eclipse/jgit/lib/Repository;)Lorg/eclipse/jgit/submodule/SubmoduleWalk;
            astore 5 /* walk */
        start local 5 // org.eclipse.jgit.submodule.SubmoduleWalk walk
        12: .line 399
            goto 23
        13: .line 400
      StackMap locals: org.eclipse.jgit.api.SubmoduleUpdateCommand org.eclipse.jgit.submodule.SubmoduleWalk
      StackMap stack:
            aconst_null
            astore 6
            aconst_null
            astore 7
        14: aload 5 /* walk */
            invokevirtual org.eclipse.jgit.submodule.SubmoduleWalk.getRepository:()Lorg/eclipse/jgit/lib/Repository;
            astore 8 /* subRepo */
        start local 8 // org.eclipse.jgit.lib.Repository subRepo
        15: .line 401
            aload 8 /* subRepo */
            ifnull 17
        16: .line 402
            aload 0 /* this */
            aload 8 /* subRepo */
            invokevirtual org.eclipse.jgit.api.CloneCommand.cloneSubmodules:(Lorg/eclipse/jgit/lib/Repository;)V
        17: .line 404
      StackMap locals: java.lang.Throwable java.lang.Throwable org.eclipse.jgit.lib.Repository
      StackMap stack:
            aload 8 /* subRepo */
            ifnull 23
            aload 8 /* subRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.close:()V
            goto 23
      StackMap locals:
      StackMap stack: java.lang.Throwable
        18: astore 6
            aload 8 /* subRepo */
            ifnull 19
            aload 8 /* subRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.close:()V
        end local 8 // org.eclipse.jgit.lib.Repository subRepo
      StackMap locals:
      StackMap stack:
        19: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 7
            aload 6
            ifnonnull 21
            aload 7
            astore 6
            goto 22
      StackMap locals:
      StackMap stack:
        21: aload 6
            aload 7
            if_acmpeq 22
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        22: aload 6
            athrow
        23: .line 399
      StackMap locals:
      StackMap stack:
            aload 5 /* walk */
            invokevirtual org.eclipse.jgit.submodule.SubmoduleWalk.next:()Z
            ifne 13
        end local 5 // org.eclipse.jgit.submodule.SubmoduleWalk walk
        24: .line 407
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.eclipse.jgit.api.SubmoduleUpdateCommand update
        end local 3 // java.util.Collection submodules
        end local 2 // org.eclipse.jgit.api.SubmoduleInitCommand init
        end local 1 // org.eclipse.jgit.lib.Repository clonedRepo
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   25     0        this  Lorg/eclipse/jgit/api/CloneCommand;
            0   25     1  clonedRepo  Lorg/eclipse/jgit/lib/Repository;
            1   25     2        init  Lorg/eclipse/jgit/api/SubmoduleInitCommand;
            2   25     3  submodules  Ljava/util/Collection<Ljava/lang/String;>;
            7   25     4      update  Lorg/eclipse/jgit/api/SubmoduleUpdateCommand;
           12   24     5        walk  Lorg/eclipse/jgit/submodule/SubmoduleWalk;
           15   19     8     subRepo  Lorg/eclipse/jgit/lib/Repository;
      Exception table:
        from    to  target  type
          15    17      18  any
          14    20      20  any
    Exceptions:
      throws java.io.IOException, org.eclipse.jgit.api.errors.GitAPIException
    MethodParameters:
            Name  Flags
      clonedRepo  

  private org.eclipse.jgit.lib.Ref findBranchToCheckout(org.eclipse.jgit.transport.FetchResult);
    descriptor: (Lorg/eclipse/jgit/transport/FetchResult;)Lorg/eclipse/jgit/lib/Ref;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=10, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.transport.FetchResult result
         0: .line 410
            aload 1 /* result */
            ldc "HEAD"
            invokevirtual org.eclipse.jgit.transport.FetchResult.getAdvertisedRef:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
            astore 2 /* idHEAD */
        start local 2 // org.eclipse.jgit.lib.Ref idHEAD
         1: .line 411
            aload 2 /* idHEAD */
            ifnull 2
            aload 2 /* idHEAD */
            invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
            goto 3
      StackMap locals: org.eclipse.jgit.lib.Ref
      StackMap stack:
         2: aconst_null
      StackMap locals:
      StackMap stack: org.eclipse.jgit.lib.ObjectId
         3: astore 3 /* headId */
        start local 3 // org.eclipse.jgit.lib.ObjectId headId
         4: .line 412
            aload 3 /* headId */
            ifnonnull 6
         5: .line 413
            aconst_null
            areturn
         6: .line 416
      StackMap locals: org.eclipse.jgit.lib.ObjectId
      StackMap stack:
            aload 2 /* idHEAD */
            ifnull 8
            aload 2 /* idHEAD */
            invokeinterface org.eclipse.jgit.lib.Ref.isSymbolic:()Z
            ifeq 8
         7: .line 417
            aload 2 /* idHEAD */
            invokeinterface org.eclipse.jgit.lib.Ref.getTarget:()Lorg/eclipse/jgit/lib/Ref;
            areturn
         8: .line 420
      StackMap locals:
      StackMap stack:
            aload 1 /* result */
            ldc "refs/heads/master"
            invokevirtual org.eclipse.jgit.transport.FetchResult.getAdvertisedRef:(Ljava/lang/String;)Lorg/eclipse/jgit/lib/Ref;
            astore 4 /* master */
        start local 4 // org.eclipse.jgit.lib.Ref master
         9: .line 422
            aload 4 /* master */
            ifnull 10
            aload 4 /* master */
            invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
            goto 11
      StackMap locals: org.eclipse.jgit.lib.Ref
      StackMap stack:
        10: aconst_null
      StackMap locals:
      StackMap stack: org.eclipse.jgit.lib.ObjectId
        11: astore 5 /* objectId */
        start local 5 // org.eclipse.jgit.lib.ObjectId objectId
        12: .line 423
            aload 3 /* headId */
            aload 5 /* objectId */
            invokevirtual org.eclipse.jgit.lib.ObjectId.equals:(Lorg/eclipse/jgit/lib/AnyObjectId;)Z
            ifeq 14
        13: .line 424
            aload 4 /* master */
            areturn
        14: .line 427
      StackMap locals: org.eclipse.jgit.lib.ObjectId
      StackMap stack:
            aconst_null
            astore 6 /* foundBranch */
        start local 6 // org.eclipse.jgit.lib.Ref foundBranch
        15: .line 428
            aload 1 /* result */
            invokevirtual org.eclipse.jgit.transport.FetchResult.getAdvertisedRefs:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 8
            goto 23
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.FetchResult org.eclipse.jgit.lib.Ref org.eclipse.jgit.lib.ObjectId org.eclipse.jgit.lib.Ref org.eclipse.jgit.lib.ObjectId org.eclipse.jgit.lib.Ref top java.util.Iterator
      StackMap stack:
        16: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.eclipse.jgit.lib.Ref
            astore 7 /* r */
        start local 7 // org.eclipse.jgit.lib.Ref r
        17: .line 429
            aload 7 /* r */
            invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
            astore 9 /* n */
        start local 9 // java.lang.String n
        18: .line 430
            aload 9 /* n */
            ldc "refs/heads/"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 20
        19: .line 431
            goto 23
        20: .line 432
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.FetchResult org.eclipse.jgit.lib.Ref org.eclipse.jgit.lib.ObjectId org.eclipse.jgit.lib.Ref org.eclipse.jgit.lib.ObjectId org.eclipse.jgit.lib.Ref org.eclipse.jgit.lib.Ref java.util.Iterator java.lang.String
      StackMap stack:
            aload 3 /* headId */
            aload 7 /* r */
            invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
            invokevirtual org.eclipse.jgit.lib.ObjectId.equals:(Lorg/eclipse/jgit/lib/AnyObjectId;)Z
            ifeq 23
        21: .line 433
            aload 7 /* r */
            astore 6 /* foundBranch */
        22: .line 434
            goto 24
        end local 9 // java.lang.String n
        end local 7 // org.eclipse.jgit.lib.Ref r
        23: .line 428
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.FetchResult org.eclipse.jgit.lib.Ref org.eclipse.jgit.lib.ObjectId org.eclipse.jgit.lib.Ref org.eclipse.jgit.lib.ObjectId org.eclipse.jgit.lib.Ref top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        24: .line 437
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.transport.FetchResult org.eclipse.jgit.lib.Ref org.eclipse.jgit.lib.ObjectId org.eclipse.jgit.lib.Ref org.eclipse.jgit.lib.ObjectId org.eclipse.jgit.lib.Ref
      StackMap stack:
            aload 6 /* foundBranch */
            areturn
        end local 6 // org.eclipse.jgit.lib.Ref foundBranch
        end local 5 // org.eclipse.jgit.lib.ObjectId objectId
        end local 4 // org.eclipse.jgit.lib.Ref master
        end local 3 // org.eclipse.jgit.lib.ObjectId headId
        end local 2 // org.eclipse.jgit.lib.Ref idHEAD
        end local 1 // org.eclipse.jgit.transport.FetchResult result
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   25     0         this  Lorg/eclipse/jgit/api/CloneCommand;
            0   25     1       result  Lorg/eclipse/jgit/transport/FetchResult;
            1   25     2       idHEAD  Lorg/eclipse/jgit/lib/Ref;
            4   25     3       headId  Lorg/eclipse/jgit/lib/ObjectId;
            9   25     4       master  Lorg/eclipse/jgit/lib/Ref;
           12   25     5     objectId  Lorg/eclipse/jgit/lib/ObjectId;
           15   25     6  foundBranch  Lorg/eclipse/jgit/lib/Ref;
           17   23     7            r  Lorg/eclipse/jgit/lib/Ref;
           18   23     9            n  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      result  

  private void addMergeConfig(org.eclipse.jgit.lib.Repository, org.eclipse.jgit.lib.Ref);
    descriptor: (Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/lib/Ref;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.lib.Repository clonedRepo
        start local 2 // org.eclipse.jgit.lib.Ref head
         0: .line 442
            aload 2 /* head */
            invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
            invokestatic org.eclipse.jgit.lib.Repository.shortenRefName:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* branchName */
        start local 3 // java.lang.String branchName
         1: .line 443
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.getConfig:()Lorg/eclipse/jgit/lib/StoredConfig;
            ldc "branch"
         2: .line 444
            aload 3 /* branchName */
            ldc "remote"
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.remote:Ljava/lang/String;
         3: .line 443
            invokevirtual org.eclipse.jgit.lib.StoredConfig.setString:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         4: .line 445
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.getConfig:()Lorg/eclipse/jgit/lib/StoredConfig;
            ldc "branch"
         5: .line 446
            aload 3 /* branchName */
            ldc "merge"
            aload 2 /* head */
            invokeinterface org.eclipse.jgit.lib.Ref.getName:()Ljava/lang/String;
         6: .line 445
            invokevirtual org.eclipse.jgit.lib.StoredConfig.setString:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         7: .line 447
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.getConfig:()Lorg/eclipse/jgit/lib/StoredConfig;
         8: .line 448
            ldc "branch"
            aconst_null
         9: .line 449
            ldc "autosetuprebase"
        10: .line 447
            invokevirtual org.eclipse.jgit.lib.StoredConfig.getString:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* autosetupRebase */
        start local 4 // java.lang.String autosetupRebase
        11: .line 450
            ldc "always"
            aload 4 /* autosetupRebase */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 13
        12: .line 451
            ldc "remote"
            aload 4 /* autosetupRebase */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 17
        13: .line 452
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.getConfig:()Lorg/eclipse/jgit/lib/StoredConfig;
        14: .line 453
            ldc "branch"
            aload 3 /* branchName */
        15: .line 454
            ldc "rebase"
            getstatic org.eclipse.jgit.lib.BranchConfig$BranchRebaseMode.REBASE:Lorg/eclipse/jgit/lib/BranchConfig$BranchRebaseMode;
        16: .line 452
            invokevirtual org.eclipse.jgit.lib.StoredConfig.setEnum:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Enum;)V
        17: .line 455
      StackMap locals:
      StackMap stack:
            aload 1 /* clonedRepo */
            invokevirtual org.eclipse.jgit.lib.Repository.getConfig:()Lorg/eclipse/jgit/lib/StoredConfig;
            invokevirtual org.eclipse.jgit.lib.StoredConfig.save:()V
        18: .line 456
            return
        end local 4 // java.lang.String autosetupRebase
        end local 3 // java.lang.String branchName
        end local 2 // org.eclipse.jgit.lib.Ref head
        end local 1 // org.eclipse.jgit.lib.Repository clonedRepo
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   19     0             this  Lorg/eclipse/jgit/api/CloneCommand;
            0   19     1       clonedRepo  Lorg/eclipse/jgit/lib/Repository;
            0   19     2             head  Lorg/eclipse/jgit/lib/Ref;
            1   19     3       branchName  Ljava/lang/String;
           11   19     4  autosetupRebase  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      clonedRepo  
      head        

  private org.eclipse.jgit.revwalk.RevCommit parseCommit(org.eclipse.jgit.lib.Repository, org.eclipse.jgit.lib.Ref);
    descriptor: (Lorg/eclipse/jgit/lib/Repository;Lorg/eclipse/jgit/lib/Ref;)Lorg/eclipse/jgit/revwalk/RevCommit;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=3
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.lib.Repository clonedRepo
        start local 2 // org.eclipse.jgit.lib.Ref ref
         0: .line 462
            aconst_null
            astore 4
            aconst_null
            astore 5
         1: new org.eclipse.jgit.revwalk.RevWalk
            dup
            aload 1 /* clonedRepo */
            invokespecial org.eclipse.jgit.revwalk.RevWalk.<init>:(Lorg/eclipse/jgit/lib/Repository;)V
            astore 6 /* rw */
        start local 6 // org.eclipse.jgit.revwalk.RevWalk rw
         2: .line 463
            aload 6 /* rw */
            aload 2 /* ref */
            invokeinterface org.eclipse.jgit.lib.Ref.getObjectId:()Lorg/eclipse/jgit/lib/ObjectId;
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.parseCommit:(Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/revwalk/RevCommit;
            astore 3 /* commit */
        start local 3 // org.eclipse.jgit.revwalk.RevCommit commit
         3: .line 464
            aload 6 /* rw */
            ifnull 9
            aload 6 /* rw */
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.close:()V
            goto 9
        end local 3 // org.eclipse.jgit.revwalk.RevCommit commit
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.lib.Repository org.eclipse.jgit.lib.Ref top java.lang.Throwable java.lang.Throwable org.eclipse.jgit.revwalk.RevWalk
      StackMap stack: java.lang.Throwable
         4: astore 4
            aload 6 /* rw */
            ifnull 5
            aload 6 /* rw */
            invokevirtual org.eclipse.jgit.revwalk.RevWalk.close:()V
        end local 6 // org.eclipse.jgit.revwalk.RevWalk rw
      StackMap locals:
      StackMap stack:
         5: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
         6: astore 5
            aload 4
            ifnonnull 7
            aload 5
            astore 4
            goto 8
      StackMap locals:
      StackMap stack:
         7: aload 4
            aload 5
            if_acmpeq 8
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
         8: aload 4
            athrow
        start local 3 // org.eclipse.jgit.revwalk.RevCommit commit
         9: .line 465
      StackMap locals: org.eclipse.jgit.api.CloneCommand org.eclipse.jgit.lib.Repository org.eclipse.jgit.lib.Ref org.eclipse.jgit.revwalk.RevCommit
      StackMap stack:
            aload 3 /* commit */
            areturn
        end local 3 // org.eclipse.jgit.revwalk.RevCommit commit
        end local 2 // org.eclipse.jgit.lib.Ref ref
        end local 1 // org.eclipse.jgit.lib.Repository clonedRepo
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/eclipse/jgit/api/CloneCommand;
            0   10     1  clonedRepo  Lorg/eclipse/jgit/lib/Repository;
            0   10     2         ref  Lorg/eclipse/jgit/lib/Ref;
            3    4     3      commit  Lorg/eclipse/jgit/revwalk/RevCommit;
            9   10     3      commit  Lorg/eclipse/jgit/revwalk/RevCommit;
            2    5     6          rw  Lorg/eclipse/jgit/revwalk/RevWalk;
      Exception table:
        from    to  target  type
           2     3       4  any
           1     6       6  any
    Exceptions:
      throws org.eclipse.jgit.errors.MissingObjectException, org.eclipse.jgit.errors.IncorrectObjectTypeException, java.io.IOException
    MethodParameters:
            Name  Flags
      clonedRepo  
      ref         

  public org.eclipse.jgit.api.CloneCommand setURI(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // java.lang.String uri
         0: .line 477
            aload 0 /* this */
            aload 1 /* uri */
            putfield org.eclipse.jgit.api.CloneCommand.uri:Ljava/lang/String;
         1: .line 478
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String uri
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jgit/api/CloneCommand;
            0    2     1   uri  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      uri   

  public org.eclipse.jgit.api.CloneCommand setDirectory(java.io.File);
    descriptor: (Ljava/io/File;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // java.io.File directory
         0: .line 497
            aload 1 /* directory */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.bare:Z
            invokestatic org.eclipse.jgit.api.CloneCommand.validateDirs:(Ljava/io/File;Ljava/io/File;Z)V
         1: .line 498
            aload 0 /* this */
            aload 1 /* directory */
            putfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
         2: .line 499
            aload 0 /* this */
            areturn
        end local 1 // java.io.File directory
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/eclipse/jgit/api/CloneCommand;
            0    3     1  directory  Ljava/io/File;
    MethodParameters:
           Name  Flags
      directory  

  public org.eclipse.jgit.api.CloneCommand setGitDir(java.io.File);
    descriptor: (Ljava/io/File;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // java.io.File gitDir
         0: .line 517
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            aload 1 /* gitDir */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.bare:Z
            invokestatic org.eclipse.jgit.api.CloneCommand.validateDirs:(Ljava/io/File;Ljava/io/File;Z)V
         1: .line 518
            aload 0 /* this */
            aload 1 /* gitDir */
            putfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
         2: .line 519
            aload 0 /* this */
            areturn
        end local 1 // java.io.File gitDir
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/eclipse/jgit/api/CloneCommand;
            0    3     1  gitDir  Ljava/io/File;
    MethodParameters:
        Name  Flags
      gitDir  

  public org.eclipse.jgit.api.CloneCommand setBare(boolean);
    descriptor: (Z)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // boolean bare
         0: .line 535
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            iload 1 /* bare */
            invokestatic org.eclipse.jgit.api.CloneCommand.validateDirs:(Ljava/io/File;Ljava/io/File;Z)V
         1: .line 536
            aload 0 /* this */
            iload 1 /* bare */
            putfield org.eclipse.jgit.api.CloneCommand.bare:Z
         2: .line 537
            aload 0 /* this */
            areturn
        end local 1 // boolean bare
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/eclipse/jgit/api/CloneCommand;
            0    3     1  bare  Z
    Exceptions:
      throws java.lang.IllegalStateException
    MethodParameters:
      Name  Flags
      bare  

  public org.eclipse.jgit.api.CloneCommand setFs(org.eclipse.jgit.util.FS);
    descriptor: (Lorg/eclipse/jgit/util/FS;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.util.FS fs
         0: .line 550
            aload 0 /* this */
            aload 1 /* fs */
            putfield org.eclipse.jgit.api.CloneCommand.fs:Lorg/eclipse/jgit/util/FS;
         1: .line 551
            aload 0 /* this */
            areturn
        end local 1 // org.eclipse.jgit.util.FS fs
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jgit/api/CloneCommand;
            0    2     1    fs  Lorg/eclipse/jgit/util/FS;
    MethodParameters:
      Name  Flags
      fs    

  public org.eclipse.jgit.api.CloneCommand setRemote(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // java.lang.String remote
         0: .line 566
            aload 1 /* remote */
            ifnonnull 2
         1: .line 567
            ldc "origin"
            astore 1 /* remote */
         2: .line 569
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* remote */
            putfield org.eclipse.jgit.api.CloneCommand.remote:Ljava/lang/String;
         3: .line 570
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String remote
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/eclipse/jgit/api/CloneCommand;
            0    4     1  remote  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      remote  

  public org.eclipse.jgit.api.CloneCommand setBranch(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // java.lang.String branch
         0: .line 586
            aload 1 /* branch */
            ifnonnull 2
         1: .line 587
            ldc "HEAD"
            astore 1 /* branch */
         2: .line 589
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* branch */
            putfield org.eclipse.jgit.api.CloneCommand.branch:Ljava/lang/String;
         3: .line 590
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String branch
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/eclipse/jgit/api/CloneCommand;
            0    4     1  branch  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      branch  

  public org.eclipse.jgit.api.CloneCommand setProgressMonitor(org.eclipse.jgit.lib.ProgressMonitor);
    descriptor: (Lorg/eclipse/jgit/lib/ProgressMonitor;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.lib.ProgressMonitor monitor
         0: .line 603
            aload 1 /* monitor */
            ifnonnull 2
         1: .line 604
            getstatic org.eclipse.jgit.lib.NullProgressMonitor.INSTANCE:Lorg/eclipse/jgit/lib/NullProgressMonitor;
            astore 1 /* monitor */
         2: .line 606
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* monitor */
            putfield org.eclipse.jgit.api.CloneCommand.monitor:Lorg/eclipse/jgit/lib/ProgressMonitor;
         3: .line 607
            aload 0 /* this */
            areturn
        end local 1 // org.eclipse.jgit.lib.ProgressMonitor monitor
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/eclipse/jgit/api/CloneCommand;
            0    4     1  monitor  Lorg/eclipse/jgit/lib/ProgressMonitor;
    MethodParameters:
         Name  Flags
      monitor  

  public org.eclipse.jgit.api.CloneCommand setCloneAllBranches(boolean);
    descriptor: (Z)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // boolean cloneAllBranches
         0: .line 623
            aload 0 /* this */
            iload 1 /* cloneAllBranches */
            putfield org.eclipse.jgit.api.CloneCommand.cloneAllBranches:Z
         1: .line 624
            aload 0 /* this */
            areturn
        end local 1 // boolean cloneAllBranches
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/eclipse/jgit/api/CloneCommand;
            0    2     1  cloneAllBranches  Z
    MethodParameters:
                  Name  Flags
      cloneAllBranches  

  public org.eclipse.jgit.api.CloneCommand setMirror(boolean);
    descriptor: (Z)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // boolean mirror
         0: .line 643
            aload 0 /* this */
            iload 1 /* mirror */
            putfield org.eclipse.jgit.api.CloneCommand.mirror:Z
         1: .line 644
            aload 0 /* this */
            areturn
        end local 1 // boolean mirror
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/eclipse/jgit/api/CloneCommand;
            0    2     1  mirror  Z
    MethodParameters:
        Name  Flags
      mirror  

  public org.eclipse.jgit.api.CloneCommand setCloneSubmodules(boolean);
    descriptor: (Z)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // boolean cloneSubmodules
         0: .line 656
            aload 0 /* this */
            iload 1 /* cloneSubmodules */
            putfield org.eclipse.jgit.api.CloneCommand.cloneSubmodules:Z
         1: .line 657
            aload 0 /* this */
            areturn
        end local 1 // boolean cloneSubmodules
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/eclipse/jgit/api/CloneCommand;
            0    2     1  cloneSubmodules  Z
    MethodParameters:
                 Name  Flags
      cloneSubmodules  

  public org.eclipse.jgit.api.CloneCommand setBranchesToClone(java.util.Collection<java.lang.String>);
    descriptor: (Ljava/util/Collection;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // java.util.Collection branchesToClone
         0: .line 676
            aload 0 /* this */
            aload 1 /* branchesToClone */
            putfield org.eclipse.jgit.api.CloneCommand.branchesToClone:Ljava/util/Collection;
         1: .line 677
            aload 0 /* this */
            areturn
        end local 1 // java.util.Collection branchesToClone
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/eclipse/jgit/api/CloneCommand;
            0    2     1  branchesToClone  Ljava/util/Collection<Ljava/lang/String;>;
    Signature: (Ljava/util/Collection<Ljava/lang/String;>;)Lorg/eclipse/jgit/api/CloneCommand;
    MethodParameters:
                 Name  Flags
      branchesToClone  

  public org.eclipse.jgit.api.CloneCommand setTagOption(org.eclipse.jgit.transport.TagOpt);
    descriptor: (Lorg/eclipse/jgit/transport/TagOpt;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.transport.TagOpt tagOption
         0: .line 689
            aload 0 /* this */
            aload 1 /* tagOption */
            putfield org.eclipse.jgit.api.CloneCommand.tagOption:Lorg/eclipse/jgit/transport/TagOpt;
         1: .line 690
            aload 0 /* this */
            areturn
        end local 1 // org.eclipse.jgit.transport.TagOpt tagOption
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/eclipse/jgit/api/CloneCommand;
            0    2     1  tagOption  Lorg/eclipse/jgit/transport/TagOpt;
    MethodParameters:
           Name  Flags
      tagOption  

  public org.eclipse.jgit.api.CloneCommand setNoTags();
    descriptor: ()Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.api.CloneCommand this
         0: .line 701
            aload 0 /* this */
            getstatic org.eclipse.jgit.transport.TagOpt.NO_TAGS:Lorg/eclipse/jgit/transport/TagOpt;
            invokevirtual org.eclipse.jgit.api.CloneCommand.setTagOption:(Lorg/eclipse/jgit/transport/TagOpt;)Lorg/eclipse/jgit/api/CloneCommand;
            areturn
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jgit/api/CloneCommand;

  public org.eclipse.jgit.api.CloneCommand setNoCheckout(boolean);
    descriptor: (Z)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // boolean noCheckout
         0: .line 714
            aload 0 /* this */
            iload 1 /* noCheckout */
            putfield org.eclipse.jgit.api.CloneCommand.noCheckout:Z
         1: .line 715
            aload 0 /* this */
            areturn
        end local 1 // boolean noCheckout
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/eclipse/jgit/api/CloneCommand;
            0    2     1  noCheckout  Z
    MethodParameters:
            Name  Flags
      noCheckout  

  public org.eclipse.jgit.api.CloneCommand setCallback(org.eclipse.jgit.api.CloneCommand$Callback);
    descriptor: (Lorg/eclipse/jgit/api/CloneCommand$Callback;)Lorg/eclipse/jgit/api/CloneCommand;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // org.eclipse.jgit.api.CloneCommand$Callback callback
         0: .line 727
            aload 0 /* this */
            aload 1 /* callback */
            putfield org.eclipse.jgit.api.CloneCommand.callback:Lorg/eclipse/jgit/api/CloneCommand$Callback;
         1: .line 728
            aload 0 /* this */
            areturn
        end local 1 // org.eclipse.jgit.api.CloneCommand$Callback callback
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/jgit/api/CloneCommand;
            0    2     1  callback  Lorg/eclipse/jgit/api/CloneCommand$Callback;
    MethodParameters:
          Name  Flags
      callback  

  private static void validateDirs(java.io.File, java.io.File, boolean);
    descriptor: (Ljava/io/File;Ljava/io/File;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=3, args_size=3
        start local 0 // java.io.File directory
        start local 1 // java.io.File gitDir
        start local 2 // boolean bare
         0: .line 733
            aload 0 /* directory */
            ifnull 21
         1: .line 734
            aload 0 /* directory */
            invokevirtual java.io.File.exists:()Z
            ifeq 5
            aload 0 /* directory */
            invokevirtual java.io.File.isDirectory:()Z
            ifne 5
         2: .line 735
            new java.lang.IllegalStateException
            dup
         3: .line 736
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.initFailedDirIsNoDirectory:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* directory */
            aastore
         4: .line 735
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 738
      StackMap locals:
      StackMap stack:
            aload 1 /* gitDir */
            ifnull 10
            aload 1 /* gitDir */
            invokevirtual java.io.File.exists:()Z
            ifeq 10
            aload 1 /* gitDir */
            invokevirtual java.io.File.isDirectory:()Z
            ifne 10
         6: .line 739
            new java.lang.IllegalStateException
            dup
         7: .line 740
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.initFailedGitDirIsNoDirectory:Ljava/lang/String;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
         8: .line 741
            aload 1 /* gitDir */
            aastore
         9: .line 739
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 743
      StackMap locals:
      StackMap stack:
            iload 2 /* bare */
            ifeq 16
        11: .line 744
            aload 1 /* gitDir */
            ifnull 21
            aload 1 /* gitDir */
            aload 0 /* directory */
            invokevirtual java.io.File.equals:(Ljava/lang/Object;)Z
            ifne 21
        12: .line 745
            new java.lang.IllegalStateException
            dup
        13: .line 746
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.initFailedBareRepoDifferentDirs:Ljava/lang/String;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        14: .line 747
            aload 1 /* gitDir */
            aastore
            dup
            iconst_1
            aload 0 /* directory */
            aastore
        15: .line 745
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 749
      StackMap locals:
      StackMap stack:
            aload 1 /* gitDir */
            ifnull 21
            aload 1 /* gitDir */
            aload 0 /* directory */
            invokevirtual java.io.File.equals:(Ljava/lang/Object;)Z
            ifeq 21
        17: .line 750
            new java.lang.IllegalStateException
            dup
        18: .line 751
            invokestatic org.eclipse.jgit.internal.JGitText.get:()Lorg/eclipse/jgit/internal/JGitText;
            getfield org.eclipse.jgit.internal.JGitText.initFailedNonBareRepoSameDirs:Ljava/lang/String;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        19: .line 752
            aload 1 /* gitDir */
            aastore
            dup
            iconst_1
            aload 0 /* directory */
            aastore
        20: .line 750
            invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 755
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean bare
        end local 1 // java.io.File gitDir
        end local 0 // java.io.File directory
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   22     0  directory  Ljava/io/File;
            0   22     1     gitDir  Ljava/io/File;
            0   22     2       bare  Z
    Exceptions:
      throws java.lang.IllegalStateException
    MethodParameters:
           Name  Flags
      directory  
      gitDir     
      bare       

  private void cleanup();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.api.CloneCommand this
         0: .line 759
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            ifnull 5
         1: .line 760
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directoryExistsInitially:Z
            ifne 4
         2: .line 761
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            bipush 13
            invokestatic org.eclipse.jgit.util.FileUtils.delete:(Ljava/io/File;I)V
         3: .line 763
            goto 5
         4: .line 764
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.directory:Ljava/io/File;
            invokevirtual org.eclipse.jgit.api.CloneCommand.deleteChildren:(Ljava/io/File;)V
         5: .line 767
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            ifnull 12
         6: .line 768
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDirExistsInitially:Z
            ifne 9
         7: .line 769
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            bipush 13
            invokestatic org.eclipse.jgit.util.FileUtils.delete:(Ljava/io/File;I)V
         8: .line 771
            goto 12
         9: .line 772
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.eclipse.jgit.api.CloneCommand.gitDir:Ljava/io/File;
            invokevirtual org.eclipse.jgit.api.CloneCommand.deleteChildren:(Ljava/io/File;)V
        10: .line 775
            goto 12
      StackMap locals:
      StackMap stack: java.io.IOException
        11: pop
        12: .line 779
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/eclipse/jgit/api/CloneCommand;
      Exception table:
        from    to  target  type
           0    10      11  Class java.io.IOException

  private void deleteChildren(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // org.eclipse.jgit.api.CloneCommand this
        start local 1 // java.io.File file
         0: .line 782
            aload 1 /* file */
            invokevirtual java.io.File.listFiles:()[Ljava/io/File;
            astore 2 /* files */
        start local 2 // java.io.File[] files
         1: .line 783
            aload 2 /* files */
            ifnonnull 3
         2: .line 784
            return
         3: .line 786
      StackMap locals: java.io.File[]
      StackMap stack:
            aload 2 /* files */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 7
      StackMap locals: org.eclipse.jgit.api.CloneCommand java.io.File java.io.File[] top int int java.io.File[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* child */
        start local 3 // java.io.File child
         5: .line 787
            aload 3 /* child */
            bipush 13
            invokestatic org.eclipse.jgit.util.FileUtils.delete:(Ljava/io/File;I)V
        end local 3 // java.io.File child
         6: .line 786
            iinc 4 1
      StackMap locals:
      StackMap stack:
         7: iload 4
            iload 5
            if_icmplt 4
         8: .line 790
            return
        end local 2 // java.io.File[] files
        end local 1 // java.io.File file
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/eclipse/jgit/api/CloneCommand;
            0    9     1   file  Ljava/io/File;
            1    9     2  files  [Ljava/io/File;
            5    6     3  child  Ljava/io/File;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      file  

  public java.lang.Object call();
    descriptor: ()Ljava/lang/Object;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.eclipse.jgit.api.CloneCommand.call:()Lorg/eclipse/jgit/api/Git;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws org.eclipse.jgit.api.errors.GitAPIException

  private void lambda$0();
    descriptor: ()V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.eclipse.jgit.api.CloneCommand this
         0: .line 175
            aload 0 /* this */
            invokevirtual org.eclipse.jgit.api.CloneCommand.cleanup:()V
            return
        end local 0 // org.eclipse.jgit.api.CloneCommand this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jgit/api/CloneCommand;
}
Signature: Lorg/eclipse/jgit/api/TransportCommand<Lorg/eclipse/jgit/api/CloneCommand;Lorg/eclipse/jgit/api/Git;>;
SourceFile: "CloneCommand.java"
NestMembers:
  org.eclipse.jgit.api.CloneCommand$Callback  org.eclipse.jgit.api.CloneCommand$FETCH_TYPE
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Callback = org.eclipse.jgit.api.CloneCommand$Callback of org.eclipse.jgit.api.CloneCommand
  private final FETCH_TYPE = org.eclipse.jgit.api.CloneCommand$FETCH_TYPE of org.eclipse.jgit.api.CloneCommand
  public final BranchRebaseMode = org.eclipse.jgit.lib.BranchConfig$BranchRebaseMode of org.eclipse.jgit.lib.BranchConfig
  public final Result = org.eclipse.jgit.lib.RefUpdate$Result of org.eclipse.jgit.lib.RefUpdate