{
  "title" : "Duplication",
  "timestamp" : "2026-01-18 17:12:09",
  "duplicates" : [ {
    "blockSize" : 40,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/URIishHelperImpl.java",
        "extension" : "java",
        "linesOfCode" : 69,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 43,
      "startLine" : 24,
      "endLine" : 83,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 40
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/URIishHelperImpl.java",
        "extension" : "java",
        "linesOfCode" : 66,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 43,
      "startLine" : 21,
      "endLine" : 80,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 40
    } ]
  }, {
    "blockSize" : 35,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/CommonURIishImpl.java",
        "extension" : "java",
        "linesOfCode" : 49,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 35,
      "startLine" : 15,
      "endLine" : 71,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 35
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/CommonURIishImpl.java",
        "extension" : "java",
        "linesOfCode" : 48,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 35,
      "startLine" : 14,
      "endLine" : 69,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 35
    } ]
  }, {
    "blockSize" : 17,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/FetchProgressMonitor.java",
        "extension" : "java",
        "linesOfCode" : 117,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 96,
      "startLine" : 80,
      "endLine" : 97,
      "cleanedStartLine" : 42,
      "cleanedEndLine" : 58
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/FetchProgressMonitor.java",
        "extension" : "java",
        "linesOfCode" : 117,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 96,
      "startLine" : 111,
      "endLine" : 128,
      "cleanedStartLine" : 68,
      "cleanedEndLine" : 84
    } ]
  }, {
    "blockSize" : 16,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitServerVersionHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 53,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 36,
      "startLine" : 24,
      "endLine" : 47,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 23
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/SwitchToNativeGitHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 40,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 26,
      "startLine" : 21,
      "endLine" : 44,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 23
    } ]
  }, {
    "blockSize" : 14,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/UpdaterWithAlternates.java",
        "extension" : "java",
        "linesOfCode" : 147,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 104,
      "startLine" : 31,
      "endLine" : 44,
      "cleanedStartLine" : 5,
      "cleanedEndLine" : 18
    }, {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/UpdaterWithMirror.java",
        "extension" : "java",
        "linesOfCode" : 483,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 366,
      "startLine" : 50,
      "endLine" : 63,
      "cleanedStartLine" : 6,
      "cleanedEndLine" : 19
    } ]
  }, {
    "blockSize" : 13,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/impl/StubContext.java",
        "extension" : "java",
        "linesOfCode" : 155,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 105,
      "startLine" : 91,
      "endLine" : 109,
      "cleanedStartLine" : 42,
      "cleanedEndLine" : 54
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/ContextImpl.java",
        "extension" : "java",
        "linesOfCode" : 199,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 144,
      "startLine" : 109,
      "endLine" : 127,
      "cleanedStartLine" : 63,
      "cleanedEndLine" : 75
    } ]
  }, {
    "blockSize" : 12,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/ssl/SSLConnectionCheck.java",
        "extension" : "java",
        "linesOfCode" : 102,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 62,
      "startLine" : 55,
      "endLine" : 70,
      "cleanedStartLine" : 25,
      "cleanedEndLine" : 36
    }, {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/ProxyHandler.java",
        "extension" : "java",
        "linesOfCode" : 149,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 115,
      "startLine" : 146,
      "endLine" : 161,
      "cleanedStartLine" : 96,
      "cleanedEndLine" : 107
    } ]
  }, {
    "blockSize" : 11,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitVcsSupport.java",
        "extension" : "java",
        "linesOfCode" : 588,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 469,
      "startLine" : 68,
      "endLine" : 78,
      "cleanedStartLine" : 27,
      "cleanedEndLine" : 37
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitVcsSupport.java",
        "extension" : "java",
        "linesOfCode" : 588,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 469,
      "startLine" : 89,
      "endLine" : 99,
      "cleanedStartLine" : 46,
      "cleanedEndLine" : 56
    } ]
  }, {
    "blockSize" : 11,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/impl/StubContext.java",
        "extension" : "java",
        "linesOfCode" : 155,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 105,
      "startLine" : 41,
      "endLine" : 55,
      "cleanedStartLine" : 10,
      "cleanedEndLine" : 20
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/ContextImpl.java",
        "extension" : "java",
        "linesOfCode" : 199,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 144,
      "startLine" : 39,
      "endLine" : 53,
      "cleanedStartLine" : 15,
      "cleanedEndLine" : 25
    } ]
  }, {
    "blockSize" : 10,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/BuildContext.java",
        "extension" : "java",
        "linesOfCode" : 171,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 122,
      "startLine" : 188,
      "endLine" : 201,
      "cleanedStartLine" : 109,
      "cleanedEndLine" : 118
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/ContextImpl.java",
        "extension" : "java",
        "linesOfCode" : 199,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 144,
      "startLine" : 219,
      "endLine" : 232,
      "cleanedStartLine" : 134,
      "cleanedEndLine" : 143
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/PluginConfigImpl.java",
        "extension" : "java",
        "linesOfCode" : 453,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 344,
      "startLine" : 478,
      "endLine" : 489,
      "cleanedStartLine" : 302,
      "cleanedEndLine" : 310
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/PluginConfigImpl.java",
        "extension" : "java",
        "linesOfCode" : 649,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 482,
      "startLine" : 724,
      "endLine" : 735,
      "cleanedStartLine" : 450,
      "cleanedEndLine" : 458
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/UpdaterImpl.java",
        "extension" : "java",
        "linesOfCode" : 1009,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 790,
      "startLine" : 84,
      "endLine" : 92,
      "cleanedStartLine" : 31,
      "cleanedEndLine" : 39
    }, {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/UpdaterWithMirror.java",
        "extension" : "java",
        "linesOfCode" : 483,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 366,
      "startLine" : 50,
      "endLine" : 58,
      "cleanedStartLine" : 6,
      "cleanedEndLine" : 14
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/impl/UnixScriptGen.java",
        "extension" : "java",
        "linesOfCode" : 60,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 41,
      "startLine" : 42,
      "endLine" : 62,
      "cleanedStartLine" : 19,
      "cleanedEndLine" : 27
    }, {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/impl/WinScriptGen.java",
        "extension" : "java",
        "linesOfCode" : 60,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 41,
      "startLine" : 39,
      "endLine" : 61,
      "cleanedStartLine" : 17,
      "cleanedEndLine" : 25
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/UpdaterImpl.java",
        "extension" : "java",
        "linesOfCode" : 1009,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 790,
      "startLine" : 84,
      "endLine" : 92,
      "cleanedStartLine" : 31,
      "cleanedEndLine" : 39
    }, {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/UpdaterWithAlternates.java",
        "extension" : "java",
        "linesOfCode" : 147,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 104,
      "startLine" : 31,
      "endLine" : 39,
      "cleanedStartLine" : 5,
      "cleanedEndLine" : 13
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitDiagnosticsTab.java",
        "extension" : "java",
        "linesOfCode" : 570,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 428,
      "startLine" : 500,
      "endLine" : 512,
      "cleanedStartLine" : 336,
      "cleanedEndLine" : 344
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitDiagnosticsTab.java",
        "extension" : "java",
        "linesOfCode" : 570,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 428,
      "startLine" : 558,
      "endLine" : 570,
      "cleanedStartLine" : 370,
      "cleanedEndLine" : 378
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/SNIHttpClientConnectionFactory.java",
        "extension" : "java",
        "linesOfCode" : 47,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 27,
      "startLine" : 28,
      "endLine" : 35,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 14
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/SSLHttpClientConnectionFactory.java",
        "extension" : "java",
        "linesOfCode" : 46,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 26,
      "startLine" : 36,
      "endLine" : 44,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 14
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/Cleanup.java",
        "extension" : "java",
        "linesOfCode" : 581,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 451,
      "startLine" : 208,
      "endLine" : 218,
      "cleanedStartLine" : 126,
      "cleanedEndLine" : 133
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/Cleanup.java",
        "extension" : "java",
        "linesOfCode" : 581,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 451,
      "startLine" : 522,
      "endLine" : 532,
      "cleanedStartLine" : 361,
      "cleanedEndLine" : 368
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/RemoteRepositoryUrlInvestigatorImpl.java",
        "extension" : "java",
        "linesOfCode" : 32,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 19,
      "startLine" : 33,
      "endLine" : 40,
      "cleanedStartLine" : 9,
      "cleanedEndLine" : 16
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/RemoteRepositoryUrlInvestigatorImpl.java",
        "extension" : "java",
        "linesOfCode" : 26,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 15,
      "startLine" : 31,
      "endLine" : 38,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 15
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/org/eclipse/jgit/treewalk/SubmoduleAwareTreeIterator.java",
        "extension" : "java",
        "linesOfCode" : 290,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 228,
      "startLine" : 111,
      "endLine" : 118,
      "cleanedStartLine" : 28,
      "cleanedEndLine" : 35
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/org/eclipse/jgit/treewalk/SubmoduleAwareTreeIterator.java",
        "extension" : "java",
        "linesOfCode" : 290,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 228,
      "startLine" : 143,
      "endLine" : 150,
      "cleanedStartLine" : 47,
      "cleanedEndLine" : 54
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/impl/StubContext.java",
        "extension" : "java",
        "linesOfCode" : 155,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 105,
      "startLine" : 133,
      "endLine" : 144,
      "cleanedStartLine" : 70,
      "cleanedEndLine" : 77
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/ContextImpl.java",
        "extension" : "java",
        "linesOfCode" : 199,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 144,
      "startLine" : 157,
      "endLine" : 168,
      "cleanedStartLine" : 96,
      "cleanedEndLine" : 103
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleConfigException.java",
        "extension" : "java",
        "linesOfCode" : 46,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 35,
      "startLine" : 42,
      "endLine" : 51,
      "cleanedStartLine" : 23,
      "cleanedEndLine" : 30
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleEntryException.java",
        "extension" : "java",
        "linesOfCode" : 46,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 36,
      "startLine" : 43,
      "endLine" : 53,
      "cleanedStartLine" : 23,
      "cleanedEndLine" : 30
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleConfigException.java",
        "extension" : "java",
        "linesOfCode" : 46,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 35,
      "startLine" : 18,
      "endLine" : 24,
      "cleanedStartLine" : 6,
      "cleanedEndLine" : 12
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleEntryException.java",
        "extension" : "java",
        "linesOfCode" : 46,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 36,
      "startLine" : 17,
      "endLine" : 23,
      "cleanedStartLine" : 6,
      "cleanedEndLine" : 12
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "license-third-party.ftl",
        "extension" : "ftl",
        "linesOfCode" : 86,
        "components" : [ "primary::ROOT" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 86,
      "startLine" : 48,
      "endLine" : 54,
      "cleanedStartLine" : 37,
      "cleanedEndLine" : 43
    }, {
      "file" : {
        "relativePath" : "license-third-party.ftl",
        "extension" : "ftl",
        "linesOfCode" : 86,
        "components" : [ "primary::ROOT" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 86,
      "startLine" : 80,
      "endLine" : 86,
      "cleanedStartLine" : 64,
      "cleanedEndLine" : 70
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleConfigException.java",
        "extension" : "java",
        "linesOfCode" : 46,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 35,
      "startLine" : 28,
      "endLine" : 39,
      "cleanedStartLine" : 14,
      "cleanedEndLine" : 20
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleEntryException.java",
        "extension" : "java",
        "linesOfCode" : 46,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 36,
      "startLine" : 28,
      "endLine" : 40,
      "cleanedStartLine" : 14,
      "cleanedEndLine" : 20
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitAgentVersionHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 133,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 93,
      "startLine" : 59,
      "endLine" : 67,
      "cleanedStartLine" : 25,
      "cleanedEndLine" : 31
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitLocalFileUrlHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 147,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 97,
      "startLine" : 46,
      "endLine" : 54,
      "cleanedStartLine" : 12,
      "cleanedEndLine" : 18
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitAgentVersionHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 133,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 93,
      "startLine" : 59,
      "endLine" : 67,
      "cleanedStartLine" : 25,
      "cleanedEndLine" : 31
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitServerVersionHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 53,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 36,
      "startLine" : 24,
      "endLine" : 32,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 14
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/UpdaterWithMirror.java",
        "extension" : "java",
        "linesOfCode" : 483,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 366,
      "startLine" : 558,
      "endLine" : 568,
      "cleanedStartLine" : 355,
      "cleanedEndLine" : 361
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/Submodule.java",
        "extension" : "java",
        "linesOfCode" : 24,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 17,
      "startLine" : 40,
      "endLine" : 56,
      "cleanedStartLine" : 9,
      "cleanedEndLine" : 15
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitGcErrorsHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 47,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 30,
      "startLine" : 28,
      "endLine" : 36,
      "cleanedStartLine" : 9,
      "cleanedEndLine" : 15
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitNotFoundHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 49,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 33,
      "startLine" : 30,
      "endLine" : 38,
      "cleanedStartLine" : 11,
      "cleanedEndLine" : 17
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/impl/StubContext.java",
        "extension" : "java",
        "linesOfCode" : 155,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 105,
      "startLine" : 113,
      "endLine" : 121,
      "cleanedStartLine" : 56,
      "cleanedEndLine" : 62
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/ContextImpl.java",
        "extension" : "java",
        "linesOfCode" : 199,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 144,
      "startLine" : 131,
      "endLine" : 139,
      "cleanedStartLine" : 77,
      "cleanedEndLine" : 83
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitLocalFileUrlHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 147,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 97,
      "startLine" : 46,
      "endLine" : 54,
      "cleanedStartLine" : 12,
      "cleanedEndLine" : 18
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/SwitchToNativeGitHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 40,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 26,
      "startLine" : 21,
      "endLine" : 29,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 14
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/impl/UnixScriptGen.java",
        "extension" : "java",
        "linesOfCode" : 60,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 41,
      "startLine" : 22,
      "endLine" : 33,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 10
    }, {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/impl/WinScriptGen.java",
        "extension" : "java",
        "linesOfCode" : 60,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 41,
      "startLine" : 22,
      "endLine" : 32,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 10
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/resources/buildServerResources/gitStatusTab.jsp",
        "extension" : "jsp",
        "linesOfCode" : 250,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 222,
      "startLine" : 178,
      "endLine" : 184,
      "cleanedStartLine" : 142,
      "cleanedEndLine" : 148
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/resources/buildServerResources/gitStatusTab.jsp",
        "extension" : "jsp",
        "linesOfCode" : 250,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 222,
      "startLine" : 200,
      "endLine" : 206,
      "cleanedStartLine" : 163,
      "cleanedEndLine" : 169
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/org/eclipse/jgit/treewalk/SubmoduleAwareTreeIterator.java",
        "extension" : "java",
        "linesOfCode" : 290,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 228,
      "startLine" : 104,
      "endLine" : 110,
      "cleanedStartLine" : 21,
      "cleanedEndLine" : 27
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/org/eclipse/jgit/treewalk/SubmoduleAwareTreeIterator.java",
        "extension" : "java",
        "linesOfCode" : 290,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 228,
      "startLine" : 134,
      "endLine" : 140,
      "cleanedStartLine" : 38,
      "cleanedEndLine" : 44
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitAgentVersionHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 133,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 93,
      "startLine" : 59,
      "endLine" : 67,
      "cleanedStartLine" : 25,
      "cleanedEndLine" : 31
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/SwitchToNativeGitHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 40,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 26,
      "startLine" : 21,
      "endLine" : 29,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 14
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitLocalFileUrlHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 147,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 97,
      "startLine" : 46,
      "endLine" : 54,
      "cleanedStartLine" : 12,
      "cleanedEndLine" : 18
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitServerVersionHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 53,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 36,
      "startLine" : 24,
      "endLine" : 32,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 14
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitDiagnosticsTab.java",
        "extension" : "java",
        "linesOfCode" : 570,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 428,
      "startLine" : 488,
      "endLine" : 500,
      "cleanedStartLine" : 330,
      "cleanedEndLine" : 336
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitDiagnosticsTab.java",
        "extension" : "java",
        "linesOfCode" : 570,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 428,
      "startLine" : 537,
      "endLine" : 549,
      "cleanedStartLine" : 359,
      "cleanedEndLine" : 365
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitGcErrorsHealthPage.java",
        "extension" : "java",
        "linesOfCode" : 78,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 48,
      "startLine" : 39,
      "endLine" : 46,
      "cleanedStartLine" : 13,
      "cleanedEndLine" : 18
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitNotFoundHealthPage.java",
        "extension" : "java",
        "linesOfCode" : 29,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 16,
      "startLine" : 22,
      "endLine" : 29,
      "cleanedStartLine" : 6,
      "cleanedEndLine" : 11
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/patch/GitPatchBuilder.java",
        "extension" : "java",
        "linesOfCode" : 199,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 157,
      "startLine" : 42,
      "endLine" : 47,
      "cleanedStartLine" : 17,
      "cleanedEndLine" : 22
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/patch/GitPatchBuilder.java",
        "extension" : "java",
        "linesOfCode" : 199,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 157,
      "startLine" : 52,
      "endLine" : 57,
      "cleanedStartLine" : 25,
      "cleanedEndLine" : 30
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitLocalFileUrlHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 147,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 97,
      "startLine" : 58,
      "endLine" : 65,
      "cleanedStartLine" : 20,
      "cleanedEndLine" : 25
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/SwitchToNativeGitHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 40,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 26,
      "startLine" : 33,
      "endLine" : 40,
      "cleanedStartLine" : 16,
      "cleanedEndLine" : 21
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/resources/META-INF/build-agent-plugin-git.xml",
        "extension" : "xml",
        "linesOfCode" : 24,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 23,
      "startLine" : 1,
      "endLine" : 6,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 6
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/resources/META-INF/build-server-plugin-git.xml",
        "extension" : "xml",
        "linesOfCode" : 39,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 37,
      "startLine" : 1,
      "endLine" : 8,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 6
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/IndirectSubmoduleAwareTreeIterator.java",
        "extension" : "java",
        "linesOfCode" : 93,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 66,
      "startLine" : 53,
      "endLine" : 58,
      "cleanedStartLine" : 5,
      "cleanedEndLine" : 10
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/IndirectSubmoduleAwareTreeIterator.java",
        "extension" : "java",
        "linesOfCode" : 93,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 66,
      "startLine" : 80,
      "endLine" : 85,
      "cleanedStartLine" : 17,
      "cleanedEndLine" : 22
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitLocalFileUrlHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 147,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 97,
      "startLine" : 58,
      "endLine" : 65,
      "cleanedStartLine" : 20,
      "cleanedEndLine" : 25
    }, {
      "file" : {
        "relativePath" : "git-server-tc/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/health/GitServerVersionHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 53,
        "components" : [ "primary::git-server-tc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 36,
      "startLine" : 36,
      "endLine" : 43,
      "cleanedStartLine" : 16,
      "cleanedEndLine" : 21
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/DirectSubmoduleAwareTreeIterator.java",
        "extension" : "java",
        "linesOfCode" : 41,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 27,
      "startLine" : 49,
      "endLine" : 54,
      "cleanedStartLine" : 10,
      "cleanedEndLine" : 15
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/org/eclipse/jgit/treewalk/SubmoduleAwareTreeIterator.java",
        "extension" : "java",
        "linesOfCode" : 290,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 228,
      "startLine" : 133,
      "endLine" : 138,
      "cleanedStartLine" : 37,
      "cleanedEndLine" : 42
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/BuildContext.java",
        "extension" : "java",
        "linesOfCode" : 171,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 122,
      "startLine" : 159,
      "endLine" : 166,
      "cleanedStartLine" : 90,
      "cleanedEndLine" : 95
    }, {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/impl/StubContext.java",
        "extension" : "java",
        "linesOfCode" : 155,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 105,
      "startLine" : 142,
      "endLine" : 149,
      "cleanedStartLine" : 75,
      "cleanedEndLine" : 80
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitServerUtil.java",
        "extension" : "java",
        "linesOfCode" : 617,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 460,
      "startLine" : 581,
      "endLine" : 586,
      "cleanedStartLine" : 321,
      "cleanedEndLine" : 326
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitServerUtil.java",
        "extension" : "java",
        "linesOfCode" : 617,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 460,
      "startLine" : 597,
      "endLine" : 602,
      "cleanedStartLine" : 334,
      "cleanedEndLine" : 339
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleCommitException.java",
        "extension" : "java",
        "linesOfCode" : 59,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 48,
      "startLine" : 53,
      "endLine" : 61,
      "cleanedStartLine" : 32,
      "cleanedEndLine" : 37
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleEntryException.java",
        "extension" : "java",
        "linesOfCode" : 46,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 36,
      "startLine" : 43,
      "endLine" : 51,
      "cleanedStartLine" : 23,
      "cleanedEndLine" : 28
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/NativeGitCommands.java",
        "extension" : "java",
        "linesOfCode" : 498,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 414,
      "startLine" : 416,
      "endLine" : 421,
      "cleanedStartLine" : 292,
      "cleanedEndLine" : 297
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/NativeGitCommands.java",
        "extension" : "java",
        "linesOfCode" : 498,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 414,
      "startLine" : 473,
      "endLine" : 478,
      "cleanedStartLine" : 339,
      "cleanedEndLine" : 344
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitFileContentDispatcher.java",
        "extension" : "java",
        "linesOfCode" : 50,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 39,
      "startLine" : 18,
      "endLine" : 25,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 12
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/ListFilesDispatcher.java",
        "extension" : "java",
        "linesOfCode" : 45,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 31,
      "startLine" : 22,
      "endLine" : 29,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 12
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/CleanupRunner.java",
        "extension" : "java",
        "linesOfCode" : 71,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 50,
      "startLine" : 54,
      "endLine" : 60,
      "cleanedStartLine" : 27,
      "cleanedEndLine" : 32
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/CleanupRunner.java",
        "extension" : "java",
        "linesOfCode" : 71,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 50,
      "startLine" : 77,
      "endLine" : 86,
      "cleanedStartLine" : 39,
      "cleanedEndLine" : 44
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitListFilesSupport.java",
        "extension" : "java",
        "linesOfCode" : 122,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 90,
      "startLine" : 32,
      "endLine" : 39,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 13
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/ListFilesDispatcher.java",
        "extension" : "java",
        "linesOfCode" : 45,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 31,
      "startLine" : 22,
      "endLine" : 29,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 12
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/NativeGitCommands.java",
        "extension" : "java",
        "linesOfCode" : 498,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 414,
      "startLine" : 473,
      "endLine" : 478,
      "cleanedStartLine" : 339,
      "cleanedEndLine" : 344
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/NativeGitCommands.java",
        "extension" : "java",
        "linesOfCode" : 498,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 414,
      "startLine" : 493,
      "endLine" : 498,
      "cleanedStartLine" : 356,
      "cleanedEndLine" : 361
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitCollectChangesPolicy.java",
        "extension" : "java",
        "linesOfCode" : 568,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 445,
      "startLine" : 615,
      "endLine" : 620,
      "cleanedStartLine" : 420,
      "cleanedEndLine" : 425
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitVcsSupport.java",
        "extension" : "java",
        "linesOfCode" : 588,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 469,
      "startLine" : 585,
      "endLine" : 590,
      "cleanedStartLine" : 392,
      "cleanedEndLine" : 397
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/ShallowUpdater.java",
        "extension" : "java",
        "linesOfCode" : 48,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 30,
      "startLine" : 45,
      "endLine" : 50,
      "cleanedStartLine" : 21,
      "cleanedEndLine" : 26
    }, {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/UpdaterImpl.java",
        "extension" : "java",
        "linesOfCode" : 1009,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 790,
      "startLine" : 367,
      "endLine" : 372,
      "cleanedStartLine" : 241,
      "cleanedEndLine" : 246
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitFileContentDispatcher.java",
        "extension" : "java",
        "linesOfCode" : 50,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 39,
      "startLine" : 18,
      "endLine" : 25,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 12
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/GitListFilesSupport.java",
        "extension" : "java",
        "linesOfCode" : 122,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 90,
      "startLine" : 32,
      "endLine" : 39,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 13
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/BuildContext.java",
        "extension" : "java",
        "linesOfCode" : 171,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 122,
      "startLine" : 142,
      "endLine" : 149,
      "cleanedStartLine" : 79,
      "cleanedEndLine" : 84
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/ContextImpl.java",
        "extension" : "java",
        "linesOfCode" : 199,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 144,
      "startLine" : 143,
      "endLine" : 150,
      "cleanedStartLine" : 85,
      "cleanedEndLine" : 90
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/TransportFactoryImpl.java",
        "extension" : "java",
        "linesOfCode" : 395,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 292,
      "startLine" : 302,
      "endLine" : 309,
      "cleanedStartLine" : 166,
      "cleanedEndLine" : 171
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/TransportFactoryImpl.java",
        "extension" : "java",
        "linesOfCode" : 395,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 292,
      "startLine" : 339,
      "endLine" : 346,
      "cleanedStartLine" : 190,
      "cleanedEndLine" : 195
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/AgentMirrorCleaner.java",
        "extension" : "java",
        "linesOfCode" : 168,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 116,
      "startLine" : 86,
      "endLine" : 91,
      "cleanedStartLine" : 42,
      "cleanedEndLine" : 47
    }, {
      "file" : {
        "relativePath" : "git-agent/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/agent/AgentMirrorCleaner.java",
        "extension" : "java",
        "linesOfCode" : 168,
        "components" : [ "primary::git-agent" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 116,
      "startLine" : 128,
      "endLine" : 133,
      "cleanedStartLine" : 70,
      "cleanedEndLine" : 75
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/patch/GitPatchBuilder.java",
        "extension" : "java",
        "linesOfCode" : 199,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 157,
      "startLine" : 60,
      "endLine" : 65,
      "cleanedStartLine" : 33,
      "cleanedEndLine" : 38
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/patch/GitPatchBuilderDispatcher.java",
        "extension" : "java",
        "linesOfCode" : 181,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 134,
      "startLine" : 59,
      "endLine" : 64,
      "cleanedStartLine" : 26,
      "cleanedEndLine" : 31
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/NativeGitCommands.java",
        "extension" : "java",
        "linesOfCode" : 498,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 414,
      "startLine" : 416,
      "endLine" : 421,
      "cleanedStartLine" : 292,
      "cleanedEndLine" : 297
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/NativeGitCommands.java",
        "extension" : "java",
        "linesOfCode" : 498,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 414,
      "startLine" : 493,
      "endLine" : 498,
      "cleanedStartLine" : 356,
      "cleanedEndLine" : 361
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/TransportFactoryImpl.java",
        "extension" : "java",
        "linesOfCode" : 395,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 292,
      "startLine" : 315,
      "endLine" : 321,
      "cleanedStartLine" : 175,
      "cleanedEndLine" : 180
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/TransportFactoryImpl.java",
        "extension" : "java",
        "linesOfCode" : 395,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 292,
      "startLine" : 382,
      "endLine" : 388,
      "cleanedStartLine" : 222,
      "cleanedEndLine" : 227
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/GitCommandLine.java",
        "extension" : "java",
        "linesOfCode" : 462,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 344,
      "startLine" : 293,
      "endLine" : 298,
      "cleanedStartLine" : 161,
      "cleanedEndLine" : 166
    }, {
      "file" : {
        "relativePath" : "git-common/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/command/GitCommandLine.java",
        "extension" : "java",
        "linesOfCode" : 462,
        "components" : [ "primary::git-common" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 344,
      "startLine" : 371,
      "endLine" : 376,
      "cleanedStartLine" : 219,
      "cleanedEndLine" : 224
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleCommitException.java",
        "extension" : "java",
        "linesOfCode" : 59,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 48,
      "startLine" : 53,
      "endLine" : 61,
      "cleanedStartLine" : 32,
      "cleanedEndLine" : 37
    }, {
      "file" : {
        "relativePath" : "git-server/src/main/java/jetbrains/buildServer/buildTriggers/vcs/git/submodules/MissingSubmoduleConfigException.java",
        "extension" : "java",
        "linesOfCode" : 46,
        "components" : [ "primary::git-server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 35,
      "startLine" : 42,
      "endLine" : 49,
      "cleanedStartLine" : 23,
      "cleanedEndLine" : 28
    } ]
  } ],
  "overallDuplication" : null
}