{
  "title" : "Duplication",
  "timestamp" : "2026-01-18 16:36:29",
  "duplicates" : [ {
    "blockSize" : 15,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/server/runtime/TakenLocksImpl.java",
        "extension" : "java",
        "linesOfCode" : 301,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 233,
      "startLine" : 200,
      "endLine" : 222,
      "cleanedStartLine" : 127,
      "cleanedEndLine" : 141
    }, {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/server/runtime/TakenLocksImpl.java",
        "extension" : "java",
        "linesOfCode" : 301,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 233,
      "startLine" : 267,
      "endLine" : 284,
      "cleanedStartLine" : 173,
      "cleanedEndLine" : 187
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/pages/actions/DeleteResourceAction.java",
        "extension" : "java",
        "linesOfCode" : 48,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 27,
      "startLine" : 32,
      "endLine" : 42,
      "cleanedStartLine" : 3,
      "cleanedEndLine" : 11
    }, {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/pages/actions/EnableDisableResourceAction.java",
        "extension" : "java",
        "linesOfCode" : 57,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 34,
      "startLine" : 30,
      "endLine" : 40,
      "cleanedStartLine" : 3,
      "cleanedEndLine" : 11
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/server/health/DuplicateResourcesHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 64,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 46,
      "startLine" : 36,
      "endLine" : 48,
      "cleanedStartLine" : 16,
      "cleanedEndLine" : 24
    }, {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/server/health/InvalidResourcesHealthReport.java",
        "extension" : "java",
        "linesOfCode" : 63,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 45,
      "startLine" : 36,
      "endLine" : 48,
      "cleanedStartLine" : 16,
      "cleanedEndLine" : 24
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/server/SharedResourcesContextProcessor.java",
        "extension" : "java",
        "linesOfCode" : 146,
        "components" : [ "primary::server" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 103,
      "startLine" : 43,
      "endLine" : 52,
      "cleanedStartLine" : 8,
      "cleanedEndLine" : 14
    }, {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/server/runtime/TakenLocksImpl.java",
        "extension" : "java",
        "linesOfCode" : 301,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 233,
      "startLine" : 31,
      "endLine" : 40,
      "cleanedStartLine" : 2,
      "cleanedEndLine" : 8
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/resources/projectPage.jsp",
        "extension" : "jsp",
        "linesOfCode" : 217,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 193,
      "startLine" : 73,
      "endLine" : 79,
      "cleanedStartLine" : 60,
      "cleanedEndLine" : 66
    }, {
      "file" : {
        "relativePath" : "server/resources/projectPage.jsp",
        "extension" : "jsp",
        "linesOfCode" : 217,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 193,
      "startLine" : 92,
      "endLine" : 98,
      "cleanedStartLine" : 78,
      "cleanedEndLine" : 84
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/pages/actions/DeleteResourceAction.java",
        "extension" : "java",
        "linesOfCode" : 48,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 27,
      "startLine" : 46,
      "endLine" : 51,
      "cleanedStartLine" : 13,
      "cleanedEndLine" : 18
    }, {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/pages/actions/EnableDisableResourceAction.java",
        "extension" : "java",
        "linesOfCode" : 57,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 34,
      "startLine" : 44,
      "endLine" : 49,
      "cleanedStartLine" : 13,
      "cleanedEndLine" : 18
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/resources/projectPage.jsp",
        "extension" : "jsp",
        "linesOfCode" : 217,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 193,
      "startLine" : 117,
      "endLine" : 122,
      "cleanedStartLine" : 100,
      "cleanedEndLine" : 105
    }, {
      "file" : {
        "relativePath" : "server/resources/projectPage.jsp",
        "extension" : "jsp",
        "linesOfCode" : 217,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 193,
      "startLine" : 136,
      "endLine" : 141,
      "cleanedStartLine" : 117,
      "cleanedEndLine" : 122
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/pages/actions/AddResourceAction.java",
        "extension" : "java",
        "linesOfCode" : 54,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 32,
      "startLine" : 38,
      "endLine" : 43,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 12
    }, {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/pages/actions/DeleteResourceAction.java",
        "extension" : "java",
        "linesOfCode" : 48,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 27,
      "startLine" : 32,
      "endLine" : 37,
      "cleanedStartLine" : 3,
      "cleanedEndLine" : 8
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/pages/actions/AddResourceAction.java",
        "extension" : "java",
        "linesOfCode" : 54,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 32,
      "startLine" : 38,
      "endLine" : 43,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 12
    }, {
      "file" : {
        "relativePath" : "server/src/jetbrains/buildServer/sharedResources/pages/actions/EnableDisableResourceAction.java",
        "extension" : "java",
        "linesOfCode" : 57,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 34,
      "startLine" : 30,
      "endLine" : 35,
      "cleanedStartLine" : 3,
      "cleanedEndLine" : 8
    } ]
  } ],
  "overallDuplication" : null
}