{
  "title" : "Duplication",
  "timestamp" : "2026-01-18 16:54:12",
  "duplicates" : [ {
    "blockSize" : 17,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "cli/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 85,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 62,
      "startLine" : 57,
      "endLine" : 79,
      "cleanedStartLine" : 34,
      "cleanedEndLine" : 50
    }, {
      "file" : {
        "relativePath" : "runner/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 109,
        "components" : [ "primary::runner" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 78,
      "startLine" : 56,
      "endLine" : 78,
      "cleanedStartLine" : 32,
      "cleanedEndLine" : 48
    } ]
  }, {
    "blockSize" : 15,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "plugin/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 94,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 68,
      "startLine" : 42,
      "endLine" : 61,
      "cleanedStartLine" : 26,
      "cleanedEndLine" : 40
    }, {
      "file" : {
        "relativePath" : "runner/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 109,
        "components" : [ "primary::runner" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 78,
      "startLine" : 59,
      "endLine" : 78,
      "cleanedStartLine" : 34,
      "cleanedEndLine" : 48
    } ]
  }, {
    "blockSize" : 15,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "cli/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 85,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 62,
      "startLine" : 60,
      "endLine" : 79,
      "cleanedStartLine" : 36,
      "cleanedEndLine" : 50
    }, {
      "file" : {
        "relativePath" : "plugin/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 94,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 68,
      "startLine" : 42,
      "endLine" : 61,
      "cleanedStartLine" : 26,
      "cleanedEndLine" : 40
    } ]
  }, {
    "blockSize" : 15,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "frontend/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 23,
        "components" : [ "primary::frontend" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 16,
      "startLine" : 3,
      "endLine" : 28,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 15
    }, {
      "file" : {
        "relativePath" : "interface/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 23,
        "components" : [ "primary::interface" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 16,
      "startLine" : 3,
      "endLine" : 28,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 15
    } ]
  }, {
    "blockSize" : 14,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "cli/src/main/kotlin/org.jetbrains.intellij/InspectionTool.kt",
        "extension" : "kt",
        "linesOfCode" : 198,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 176,
      "startLine" : 89,
      "endLine" : 102,
      "cleanedStartLine" : 64,
      "cleanedEndLine" : 77
    }, {
      "file" : {
        "relativePath" : "cli/src/main/kotlin/org.jetbrains.intellij/InspectionTool.kt",
        "extension" : "kt",
        "linesOfCode" : 198,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 176,
      "startLine" : 113,
      "endLine" : 126,
      "cleanedStartLine" : 87,
      "cleanedEndLine" : 100
    } ]
  }, {
    "blockSize" : 14,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "plugin/src/main/kotlin/org/jetbrains/intellij/tasks/DownloadKotlinPluginTask.kt",
        "extension" : "kt",
        "linesOfCode" : 43,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 33,
      "startLine" : 14,
      "endLine" : 30,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 17
    }, {
      "file" : {
        "relativePath" : "plugin/src/main/kotlin/org/jetbrains/intellij/tasks/UnzipKotlinPluginTask.kt",
        "extension" : "kt",
        "linesOfCode" : 54,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 40,
      "startLine" : 15,
      "endLine" : 31,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 17
    } ]
  }, {
    "blockSize" : 10,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "cli/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 85,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 62,
      "startLine" : 10,
      "endLine" : 25,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 13
    }, {
      "file" : {
        "relativePath" : "runner/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 109,
        "components" : [ "primary::runner" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 78,
      "startLine" : 10,
      "endLine" : 25,
      "cleanedStartLine" : 3,
      "cleanedEndLine" : 12
    } ]
  }, {
    "blockSize" : 10,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "plugin/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 94,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 68,
      "startLine" : 5,
      "endLine" : 17,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 10
    }, {
      "file" : {
        "relativePath" : "runner/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 109,
        "components" : [ "primary::runner" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 78,
      "startLine" : 8,
      "endLine" : 20,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 10
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "cli/src/main/kotlin/org.jetbrains.intellij/InspectionTool.kt",
        "extension" : "kt",
        "linesOfCode" : 198,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 176,
      "startLine" : 78,
      "endLine" : 86,
      "cleanedStartLine" : 54,
      "cleanedEndLine" : 62
    }, {
      "file" : {
        "relativePath" : "cli/src/main/kotlin/org.jetbrains.intellij/InspectionTool.kt",
        "extension" : "kt",
        "linesOfCode" : 198,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 176,
      "startLine" : 102,
      "endLine" : 110,
      "cleanedStartLine" : 77,
      "cleanedEndLine" : 85
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "cli/src/main/kotlin/org.jetbrains.intellij/InspectionTool.kt",
        "extension" : "kt",
        "linesOfCode" : 198,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 176,
      "startLine" : 65,
      "endLine" : 72,
      "cleanedStartLine" : 41,
      "cleanedEndLine" : 48
    }, {
      "file" : {
        "relativePath" : "cli/src/main/kotlin/org.jetbrains.intellij/InspectionTool.kt",
        "extension" : "kt",
        "linesOfCode" : 198,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 176,
      "startLine" : 113,
      "endLine" : 120,
      "cleanedStartLine" : 87,
      "cleanedEndLine" : 94
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "cli/src/main/kotlin/org.jetbrains.intellij/InspectionTool.kt",
        "extension" : "kt",
        "linesOfCode" : 198,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 176,
      "startLine" : 65,
      "endLine" : 72,
      "cleanedStartLine" : 41,
      "cleanedEndLine" : 48
    }, {
      "file" : {
        "relativePath" : "cli/src/main/kotlin/org.jetbrains.intellij/InspectionTool.kt",
        "extension" : "kt",
        "linesOfCode" : 198,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 176,
      "startLine" : 89,
      "endLine" : 96,
      "cleanedStartLine" : 64,
      "cleanedEndLine" : 71
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "cli/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 85,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 62,
      "startLine" : 44,
      "endLine" : 55,
      "cleanedStartLine" : 25,
      "cleanedEndLine" : 32
    }, {
      "file" : {
        "relativePath" : "runner/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 109,
        "components" : [ "primary::runner" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 78,
      "startLine" : 43,
      "endLine" : 54,
      "cleanedStartLine" : 23,
      "cleanedEndLine" : 30
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "cli/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 85,
        "components" : [ "primary::cli" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 62,
      "startLine" : 10,
      "endLine" : 20,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 11
    }, {
      "file" : {
        "relativePath" : "plugin/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 94,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 68,
      "startLine" : 7,
      "endLine" : 17,
      "cleanedStartLine" : 3,
      "cleanedEndLine" : 10
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "buildSrc/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 21,
        "components" : [ "primary::buildSrc" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 15,
      "startLine" : 7,
      "endLine" : 19,
      "cleanedStartLine" : 5,
      "cleanedEndLine" : 11
    }, {
      "file" : {
        "relativePath" : "testing/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 33,
        "components" : [ "primary::testing" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 25,
      "startLine" : 5,
      "endLine" : 17,
      "cleanedStartLine" : 3,
      "cleanedEndLine" : 9
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "plugin/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 94,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 68,
      "startLine" : 16,
      "endLine" : 26,
      "cleanedStartLine" : 9,
      "cleanedEndLine" : 15
    }, {
      "file" : {
        "relativePath" : "testing/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 33,
        "components" : [ "primary::testing" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 25,
      "startLine" : 12,
      "endLine" : 22,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 13
    } ]
  }, {
    "blockSize" : 7,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "runner/src/main/kotlin/org/jetbrains/idea/inspections/runners/InspectionsRunner.kt",
        "extension" : "kt",
        "linesOfCode" : 442,
        "components" : [ "primary::runner" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 347,
      "startLine" : 213,
      "endLine" : 223,
      "cleanedStartLine" : 143,
      "cleanedEndLine" : 149
    }, {
      "file" : {
        "relativePath" : "runner/src/main/kotlin/org/jetbrains/idea/inspections/runners/InspectionsRunner.kt",
        "extension" : "kt",
        "linesOfCode" : 442,
        "components" : [ "primary::runner" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 347,
      "startLine" : 249,
      "endLine" : 259,
      "cleanedStartLine" : 172,
      "cleanedEndLine" : 178
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "frontend/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 23,
        "components" : [ "primary::frontend" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 16,
      "startLine" : 11,
      "endLine" : 20,
      "cleanedStartLine" : 6,
      "cleanedEndLine" : 11
    }, {
      "file" : {
        "relativePath" : "testing/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 33,
        "components" : [ "primary::testing" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 25,
      "startLine" : 12,
      "endLine" : 21,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 12
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "interface/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 23,
        "components" : [ "primary::interface" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 16,
      "startLine" : 11,
      "endLine" : 20,
      "cleanedStartLine" : 6,
      "cleanedEndLine" : 11
    }, {
      "file" : {
        "relativePath" : "testing/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 33,
        "components" : [ "primary::testing" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 25,
      "startLine" : 12,
      "endLine" : 21,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 12
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "plugin/src/main/kotlin/org/jetbrains/intellij/tasks/DownloadKotlinPluginTask.kt",
        "extension" : "kt",
        "linesOfCode" : 43,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 33,
      "startLine" : 14,
      "endLine" : 20,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 9
    }, {
      "file" : {
        "relativePath" : "plugin/src/main/kotlin/org/jetbrains/intellij/tasks/UnzipIdeaTask.kt",
        "extension" : "kt",
        "linesOfCode" : 49,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 35,
      "startLine" : 14,
      "endLine" : 20,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 9
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "interface/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 23,
        "components" : [ "primary::interface" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 16,
      "startLine" : 11,
      "endLine" : 20,
      "cleanedStartLine" : 6,
      "cleanedEndLine" : 11
    }, {
      "file" : {
        "relativePath" : "plugin/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 94,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 68,
      "startLine" : 16,
      "endLine" : 25,
      "cleanedStartLine" : 9,
      "cleanedEndLine" : 14
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "plugin/src/main/kotlin/org/jetbrains/intellij/tasks/UnzipIdeaTask.kt",
        "extension" : "kt",
        "linesOfCode" : 49,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 35,
      "startLine" : 38,
      "endLine" : 44,
      "cleanedStartLine" : 23,
      "cleanedEndLine" : 28
    }, {
      "file" : {
        "relativePath" : "plugin/src/main/kotlin/org/jetbrains/intellij/tasks/UnzipKotlinPluginTask.kt",
        "extension" : "kt",
        "linesOfCode" : 54,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 40,
      "startLine" : 50,
      "endLine" : 56,
      "cleanedStartLine" : 32,
      "cleanedEndLine" : 37
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "frontend/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 23,
        "components" : [ "primary::frontend" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 16,
      "startLine" : 11,
      "endLine" : 20,
      "cleanedStartLine" : 6,
      "cleanedEndLine" : 11
    }, {
      "file" : {
        "relativePath" : "plugin/build.gradle.kts",
        "extension" : "kts",
        "linesOfCode" : 94,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 68,
      "startLine" : 16,
      "endLine" : 25,
      "cleanedStartLine" : 9,
      "cleanedEndLine" : 14
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "runner/src/main/kotlin/org/jetbrains/idea/inspections/runners/InspectionsRunner.kt",
        "extension" : "kt",
        "linesOfCode" : 442,
        "components" : [ "primary::runner" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 347,
      "startLine" : 205,
      "endLine" : 210,
      "cleanedStartLine" : 135,
      "cleanedEndLine" : 140
    }, {
      "file" : {
        "relativePath" : "runner/src/main/kotlin/org/jetbrains/idea/inspections/runners/InspectionsRunner.kt",
        "extension" : "kt",
        "linesOfCode" : 442,
        "components" : [ "primary::runner" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 347,
      "startLine" : 237,
      "endLine" : 242,
      "cleanedStartLine" : 161,
      "cleanedEndLine" : 166
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "plugin/src/main/kotlin/org/jetbrains/intellij/tasks/UnzipIdeaTask.kt",
        "extension" : "kt",
        "linesOfCode" : 49,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 35,
      "startLine" : 14,
      "endLine" : 20,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 9
    }, {
      "file" : {
        "relativePath" : "plugin/src/main/kotlin/org/jetbrains/intellij/tasks/UnzipKotlinPluginTask.kt",
        "extension" : "kt",
        "linesOfCode" : 54,
        "components" : [ "primary::plugin" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 40,
      "startLine" : 15,
      "endLine" : 21,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 9
    } ]
  } ],
  "overallDuplication" : null
}