[ {
  "relativePath" : "settings.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 2,
  "components" : [ "primary::ROOT" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/exceptions/ZipVerificationException.kt",
  "extension" : "kt",
  "linesOfCode" : 3,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signer/KeystoreUtils.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signer/SignerInfoLoader.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signer/PrivateKeyUtils.kt",
  "extension" : "kt",
  "linesOfCode" : 55,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signer/CertificateUtils.kt",
  "extension" : "kt",
  "linesOfCode" : 162,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signer/SignerInfo.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signer/PublicKeyUtils.kt",
  "extension" : "kt",
  "linesOfCode" : 59,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/metadata/SignerBlock.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/metadata/SignatureAlgorithm.kt",
  "extension" : "kt",
  "linesOfCode" : 44,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/metadata/Digest.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/metadata/SignatureData.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/metadata/ContentDigestAlgorithm.kt",
  "extension" : "kt",
  "linesOfCode" : 9,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/metadata/ZipMetadata.kt",
  "extension" : "kt",
  "linesOfCode" : 85,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/datasource/DataSource.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/datasource/ByteBufferDataSource.kt",
  "extension" : "kt",
  "linesOfCode" : 47,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/datasource/FileChannelDataSource.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/datasource/SeekableByteChannelDataSource.kt",
  "extension" : "kt",
  "linesOfCode" : 86,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/zip/ZipSectionsInformation.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/zip/ZipSections.kt",
  "extension" : "kt",
  "linesOfCode" : 11,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/zip/ZipUtils.kt",
  "extension" : "kt",
  "linesOfCode" : 107,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/verifier/ZipVerificationResult.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/verifier/SignatureVerifier.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/verifier/DefaultSignatureVerifier.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/verifier/ZipVerifier.kt",
  "extension" : "kt",
  "linesOfCode" : 103,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signing/SignatureProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signing/Signing.kt",
  "extension" : "kt",
  "linesOfCode" : 40,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signing/ZipSigner.kt",
  "extension" : "kt",
  "linesOfCode" : 108,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/signing/DefaultSignatureProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/utils/ByteArrayExtensions.kt",
  "extension" : "kt",
  "linesOfCode" : 8,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/utils/ByteBufferExtensions.kt",
  "extension" : "kt",
  "linesOfCode" : 15,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/utils/SecurityUtils.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/digest/DigestUtils.kt",
  "extension" : "kt",
  "linesOfCode" : 43,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/digest/ChunkIterator.kt",
  "extension" : "kt",
  "linesOfCode" : 20,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/kotlin/org/jetbrains/zip/signer/digest/ChunkDigester.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/src/main/proto/SigningBlock.proto",
  "extension" : "proto",
  "linesOfCode" : 35,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "lib/build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 43,
  "components" : [ "primary::lib" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "google-kms-signer-cli/src/main/kotlin/org/jetbrains/zip/signer/GoogleCloudSignatureProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 36,
  "components" : [ "primary::google-kms-signer-cli" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "google-kms-signer-cli/src/main/kotlin/org/jetbrains/zip/signer/GoogleCloudSignerCli.kt",
  "extension" : "kt",
  "linesOfCode" : 114,
  "components" : [ "primary::google-kms-signer-cli" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "google-kms-signer-cli/build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 16,
  "components" : [ "primary::google-kms-signer-cli" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "cli/src/main/kotlin/org/jetbrains/zip/signer/ZipSigningTool.kt",
  "extension" : "kt",
  "linesOfCode" : 124,
  "components" : [ "primary::cli" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "cli/build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 36,
  "components" : [ "primary::cli" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 169,
  "components" : [ "primary::ROOT" ],
  "concerns" : [ "::Unclassified" ]
} ]