diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index f58d40ef0..ce63a07bf 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -31,6 +31,6 @@ jobs: run: cp -r ./docs/. ./wiki - name: Deploy 🚀 - uses: stefanzweifel/git-auto-commit-action@v4 + uses: stefanzweifel/git-auto-commit-action@v5 with: repository: wiki diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 9958ac0f4..3f97090df 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -41,7 +41,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v3 with: - java-version: 17 + java-version: 21 distribution: 'temurin' - name: Run Tests diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 7f21a6818..5fcc99400 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -10,7 +10,7 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-java@v3 with: - java-version: '17' + java-version: '21' distribution: 'temurin' - name: Set maven settings.xml uses: whelk-io/maven-settings-xml-action@v21 @@ -32,7 +32,7 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-java@v3 with: - java-version: '17' + java-version: '21' distribution: 'temurin' - name: Build JPlag run: mvn -U -B clean package assembly:single diff --git a/.github/workflows/report-viewer-build-test.yml b/.github/workflows/report-viewer-build-test.yml index aa80c86dd..5958c26ad 100644 --- a/.github/workflows/report-viewer-build-test.yml +++ b/.github/workflows/report-viewer-build-test.yml @@ -28,7 +28,7 @@ jobs: - name: Checkout 🛎️ uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: "18" diff --git a/.github/workflows/report-viewer-dev.yml b/.github/workflows/report-viewer-dev.yml index 92fe97407..6dd6d055a 100644 --- a/.github/workflows/report-viewer-dev.yml +++ b/.github/workflows/report-viewer-dev.yml @@ -16,23 +16,10 @@ jobs: - name: Checkout 🛎️ uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: "18" - - name: Set version of Report Viewer - shell: bash - run: | - VERSION=$(grep "" pom.xml | grep -oPm1 "(?<=)[^-|<]+") - MAJOR=$(echo $VERSION | cut -d '.' -f 1) - MINOR=$(echo $VERSION | cut -d '.' -f 2) - PATCH=$(echo $VERSION | cut -d '.' -f 3) - sed -i "/major/s/.*/ \"major\": $MAJOR,/" report-viewer/src/version.json - sed -i "/minor/s/.*/ \"minor\": $MINOR,/" report-viewer/src/version.json - sed -i "/patch/s/.*/ \"patch\": $PATCH/" report-viewer/src/version.json - echo "Version of Report Viewer:" - cat report-viewer/src/version.json - - name: Install and Build 🔧 working-directory: report-viewer run: | diff --git a/.github/workflows/report-viewer-e2e.yml b/.github/workflows/report-viewer-e2e.yml index 9e265b910..0335bf8ad 100644 --- a/.github/workflows/report-viewer-e2e.yml +++ b/.github/workflows/report-viewer-e2e.yml @@ -28,7 +28,7 @@ jobs: - name: Checkout 🛎️ uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: "18" diff --git a/.github/workflows/report-viewer-lint.yml b/.github/workflows/report-viewer-lint.yml index 924b274e7..080b1a02f 100644 --- a/.github/workflows/report-viewer-lint.yml +++ b/.github/workflows/report-viewer-lint.yml @@ -33,7 +33,7 @@ jobs: - name: Checkout 🛎️ uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: "18" diff --git a/.github/workflows/report-viewer-prettier.yml b/.github/workflows/report-viewer-prettier.yml index e9933c24e..eb1cc46e3 100644 --- a/.github/workflows/report-viewer-prettier.yml +++ b/.github/workflows/report-viewer-prettier.yml @@ -33,7 +33,7 @@ jobs: - name: Checkout 🛎️ uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: "18" diff --git a/.github/workflows/report-viewer-unit.yml b/.github/workflows/report-viewer-unit.yml index 48f9082a7..3a0738588 100644 --- a/.github/workflows/report-viewer-unit.yml +++ b/.github/workflows/report-viewer-unit.yml @@ -28,7 +28,7 @@ jobs: - name: Checkout 🛎️ uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: "18" diff --git a/.github/workflows/report-viewer.yml b/.github/workflows/report-viewer.yml index 624dde7c5..fd08936ec 100644 --- a/.github/workflows/report-viewer.yml +++ b/.github/workflows/report-viewer.yml @@ -13,7 +13,7 @@ jobs: - name: Checkout 🛎️ uses: actions/checkout@v4 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v4 with: node-version: "18" @@ -24,9 +24,9 @@ jobs: MAJOR=$(echo $VERSION | cut -d '.' -f 1) MINOR=$(echo $VERSION | cut -d '.' -f 2) PATCH=$(echo $VERSION | cut -d '.' -f 3) - sed -i "/major/s/.*/ \"major\": $MAJOR,/" report-viewer/src/version.json - sed -i "/minor/s/.*/ \"minor\": $MINOR,/" report-viewer/src/version.json - sed -i "/patch/s/.*/ \"patch\": $PATCH/" report-viewer/src/version.json + json=$(cat report-viewer/src/version.json) + json=$(echo "$json" | jq --arg MAJOR "$MAJOR" --arg MINOR "$MINOR" --arg PATCH "$PATCH" '.report_viewer_version |= { "major": $MAJOR | tonumber, "minor": $MINOR | tonumber, "patch": $PATCH | tonumber }') + echo "$json" > report-viewer/src/version.json echo "Version of Report Viewer:" cat report-viewer/src/version.json diff --git a/.github/workflows/sonarcloud-branch.yml b/.github/workflows/sonarcloud-branch.yml index b257a8101..ab5728a96 100644 --- a/.github/workflows/sonarcloud-branch.yml +++ b/.github/workflows/sonarcloud-branch.yml @@ -28,7 +28,7 @@ jobs: uses: actions/setup-java@v3 with: distribution: 'temurin' - java-version: 17 + java-version: 21 - name: Cache SonarCloud packages uses: actions/cache@v3 diff --git a/.github/workflows/sonarcloud-pr.yml b/.github/workflows/sonarcloud-pr.yml index a4274b34f..dd5293a0d 100644 --- a/.github/workflows/sonarcloud-pr.yml +++ b/.github/workflows/sonarcloud-pr.yml @@ -51,7 +51,7 @@ jobs: uses: actions/setup-java@v3 with: distribution: 'temurin' - java-version: 17 + java-version: 21 - name: Cache SonarCloud packages uses: actions/cache@v3 diff --git a/.github/workflows/spotless.yml b/.github/workflows/spotless.yml index 25de0f0a0..21359d3fa 100644 --- a/.github/workflows/spotless.yml +++ b/.github/workflows/spotless.yml @@ -41,7 +41,7 @@ jobs: - name: Set up JDK uses: actions/setup-java@v3 with: - java-version: 17 + java-version: 21 distribution: 'temurin' - name: Check with Spotless diff --git a/README.md b/README.md index 38f581b8c..2a124620a 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ In the following, a list of all supported languages with their supported languag | Language | Version | CLI Argument Name | [state](https://github.com/jplag/JPlag/wiki/2.-Supported-Languages) | parser | |------------------------------------------------------------|---------------------------------------------------------------------------------------:|-------------------|:-------------------------------------------------------------------:|:---------:| -| [Java](https://www.java.com) | 17 | java | mature | JavaC | +| [Java](https://www.java.com) | 21 | java | mature | JavaC | | [C/C++](https://isocpp.org) | 11 | cpp | legacy | JavaCC | | [C/C++](https://isocpp.org) | 14 | cpp2 | beta | ANTLR 4 | | [C#](https://docs.microsoft.com/en-us/dotnet/csharp/) | 6 | csharp | beta | ANTLR 4 | @@ -40,7 +40,7 @@ In the following, a list of all supported languages with their supported languag | Text (naive) | - | text | legacy | CoreNLP | ## Download and Installation -You need Java SE 17 to run or build JPlag. +You need Java SE 21 to run or build JPlag. ### Downloading a release * Download a [released version](https://github.com/jplag/jplag/releases). diff --git a/core/src/main/java/de/jplag/GreedyStringTiling.java b/core/src/main/java/de/jplag/GreedyStringTiling.java index c832d4f30..3cef93354 100644 --- a/core/src/main/java/de/jplag/GreedyStringTiling.java +++ b/core/src/main/java/de/jplag/GreedyStringTiling.java @@ -1,6 +1,7 @@ package de.jplag; import java.util.ArrayList; +import java.util.Comparator; import java.util.HashSet; import java.util.IdentityHashMap; import java.util.List; @@ -22,9 +23,8 @@ public class GreedyStringTiling { private final int minimumMatchLength; - private final int minimumNeighborLength; - private JPlagOptions options; - private ConcurrentMap tokenTypeValues; + private final JPlagOptions options; + private final ConcurrentMap tokenTypeValues; private final Map> baseCodeMarkings = new IdentityHashMap<>(); private final Map cachedTokenValueLists = new IdentityHashMap<>(); @@ -33,8 +33,8 @@ public class GreedyStringTiling { public GreedyStringTiling(JPlagOptions options) { this.options = options; // Ensures 1 <= neighborLength <= minimumTokenMatch - this.minimumNeighborLength = Math.min(Math.max(options.mergingOptions().minimumNeighborLength(), 1), options.minimumTokenMatch()); - this.minimumMatchLength = options.mergingOptions().enabled() ? this.minimumNeighborLength : options.minimumTokenMatch(); + int minimumNeighborLength = Math.min(Math.max(options.mergingOptions().minimumNeighborLength(), 1), options.minimumTokenMatch()); + this.minimumMatchLength = options.mergingOptions().enabled() ? minimumNeighborLength : options.minimumTokenMatch(); this.tokenTypeValues = new ConcurrentHashMap<>(); this.tokenTypeValues.put(SharedTokenType.FILE_END, 0); } @@ -78,12 +78,15 @@ public final JPlagComparison generateBaseCodeMarking(Submission submission, Subm public final JPlagComparison compare(Submission firstSubmission, Submission secondSubmission) { Submission smallerSubmission; Submission largerSubmission; - if (firstSubmission.getTokenList().size() > secondSubmission.getTokenList().size()) { - smallerSubmission = secondSubmission; - largerSubmission = firstSubmission; - } else { + Comparator submissionComparator = Comparator.comparing((Submission it) -> it.getTokenList().size()) + .thenComparing(Submission::getName); + + if (submissionComparator.compare(firstSubmission, secondSubmission) <= 0) { smallerSubmission = firstSubmission; largerSubmission = secondSubmission; + } else { + smallerSubmission = secondSubmission; + largerSubmission = firstSubmission; } return compareInternal(smallerSubmission, largerSubmission); } diff --git a/core/src/main/java/de/jplag/Submission.java b/core/src/main/java/de/jplag/Submission.java index f47db6d60..0fec4e0b3 100644 --- a/core/src/main/java/de/jplag/Submission.java +++ b/core/src/main/java/de/jplag/Submission.java @@ -247,6 +247,11 @@ private static File createErrorDirectory(String... subdirectoryNames) { try { tokenList = language.parse(new HashSet<>(files)); + if (logger.isDebugEnabled()) { + for (Token token : tokenList) { + logger.debug(String.join(" | ", token.getType().toString(), Integer.toString(token.getLine()), token.getSemantics().toString())); + } + } } catch (ParsingException e) { logger.warn("Failed to parse submission {} with error {}", this, e.getMessage(), e); tokenList = null; @@ -272,7 +277,7 @@ private static File createErrorDirectory(String... subdirectoryNames) { */ void normalize() { List originalOrder = getOrder(tokenList); - TokenStringNormalizer.normalize(tokenList); + tokenList = TokenStringNormalizer.normalize(tokenList); List normalizedOrder = getOrder(tokenList); logger.debug("original line order: {}", originalOrder); diff --git a/core/src/main/java/de/jplag/SubmissionSet.java b/core/src/main/java/de/jplag/SubmissionSet.java index c9fbc6f11..166a151fb 100644 --- a/core/src/main/java/de/jplag/SubmissionSet.java +++ b/core/src/main/java/de/jplag/SubmissionSet.java @@ -144,6 +144,7 @@ private void parseSubmissions(List submissions) { int tooShort = 0; for (Submission submission : submissions) { + logger.info("Parsing submission {}", submission.getName()); boolean ok; logger.trace("------ Parsing submission: " + submission.getName()); diff --git a/core/src/main/java/de/jplag/normalization/TokenStringNormalizer.java b/core/src/main/java/de/jplag/normalization/TokenStringNormalizer.java index 47a053d0f..c58a9188e 100644 --- a/core/src/main/java/de/jplag/normalization/TokenStringNormalizer.java +++ b/core/src/main/java/de/jplag/normalization/TokenStringNormalizer.java @@ -1,5 +1,6 @@ package de.jplag.normalization; +import java.util.ArrayList; import java.util.LinkedList; import java.util.List; import java.util.PriorityQueue; @@ -20,13 +21,15 @@ private TokenStringNormalizer() { } /** - * Normalizes the token string it receives in place. Tokens representing dead code have been eliminated and tokens - * representing subsequent independent statements have been put in a fixed order. Works by first constructing a - * Normalization Graph and then turning it back into a token string. + * Performs token string normalization. Tokens representing dead code have been eliminated and tokens representing + * subsequent independent statements have been put in a fixed order. Works by first constructing a Normalization Graph + * and then turning it back into a token string. + * @param tokens The original token string, remains unaltered. + * @return The normalized token string. */ - public static void normalize(List tokens) { + public static List normalize(List tokens) { SimpleDirectedGraph normalizationGraph = new NormalizationGraphConstructor(tokens).get(); - tokens.clear(); + List normalizedTokens = new ArrayList<>(tokens.size()); spreadKeep(normalizationGraph); PriorityQueue roots = normalizationGraph.vertexSet().stream() // .filter(v -> !Graphs.vertexHasPredecessors(normalizationGraph, v)) // @@ -36,7 +39,7 @@ public static void normalize(List tokens) { do { Statement statement = roots.poll(); if (statement.semantics().keep()) { - tokens.addAll(statement.tokens()); + normalizedTokens.addAll(statement.tokens()); } for (Statement successor : Graphs.successorListOf(normalizationGraph, statement)) { normalizationGraph.removeEdge(statement, successor); @@ -47,6 +50,7 @@ public static void normalize(List tokens) { } while (!roots.isEmpty()); roots = newRoots; } + return normalizedTokens; } /** diff --git a/core/src/test/java/de/jplag/NewJavaFeaturesTest.java b/core/src/test/java/de/jplag/NewJavaFeaturesTest.java index 2bfdd86d0..6f14ebf06 100644 --- a/core/src/test/java/de/jplag/NewJavaFeaturesTest.java +++ b/core/src/test/java/de/jplag/NewJavaFeaturesTest.java @@ -7,12 +7,13 @@ import org.junit.jupiter.api.Test; import de.jplag.exceptions.ExitException; +import de.jplag.java.JavaLanguage; public class NewJavaFeaturesTest extends TestBase { - private static final int EXPECTED_MATCHES = 6; // might change if you add files to the submissions - private static final double EXPECTED_SIMILARITY = 0.96; // might change if you add files to the submissions - private static final String EXPECTED_JAVA_VERSION = "17"; // might change with newer JPlag versions + private static final int EXPECTED_MATCHES = 8; // might change if you add files to the submissions + private static final int NUMBER_OF_TEST_FILES = 8; + private static final double EXPECTED_SIMILARITY = 0.971; // might change if you add files to the submissions private static final String EXCLUSION_FILE_NAME = "blacklist.txt"; private static final String ROOT_DIRECTORY = "NewJavaFeatures"; @@ -28,15 +29,15 @@ public void testJavaFeatureDuplicates() throws ExitException { // pre-condition String actualJavaVersion = System.getProperty(JAVA_VERSION_KEY); boolean isCiRun = System.getenv(CI_VARIABLE) != null; - boolean isCorrectJavaVersion = actualJavaVersion.startsWith(EXPECTED_JAVA_VERSION); - assumeTrue(isCorrectJavaVersion || isCiRun, VERSION_MISMATCH_MESSAGE.formatted(actualJavaVersion, EXPECTED_JAVA_VERSION)); + boolean isCorrectJavaVersion = actualJavaVersion.startsWith(String.valueOf(JavaLanguage.JAVA_VERSION)); + assumeTrue(isCorrectJavaVersion || isCiRun, VERSION_MISMATCH_MESSAGE.formatted(actualJavaVersion, JavaLanguage.JAVA_VERSION)); JPlagResult result = runJPlagWithExclusionFile(ROOT_DIRECTORY, EXCLUSION_FILE_NAME); // Ensure test input did not change: assertEquals(2, result.getNumberOfSubmissions(), String.format(CHANGE_MESSAGE, "Submissions")); for (Submission submission : result.getSubmissions().getSubmissions()) { - assertEquals(6, submission.getFiles().size(), String.format(CHANGE_MESSAGE, "Files")); + assertEquals(NUMBER_OF_TEST_FILES, submission.getFiles().size(), String.format(CHANGE_MESSAGE, "Files")); } assertEquals(1, result.getAllComparisons().size(), String.format(CHANGE_MESSAGE, "Comparisons")); diff --git a/core/src/test/resources/de/jplag/samples/NewJavaFeatures/A/Java21.java b/core/src/test/resources/de/jplag/samples/NewJavaFeatures/A/Java21.java new file mode 100644 index 000000000..7917a5005 --- /dev/null +++ b/core/src/test/resources/de/jplag/samples/NewJavaFeatures/A/Java21.java @@ -0,0 +1,31 @@ +public class Java21 { + private static final record Circle(int radius) { + } + + private static final record Rect(int width, int height) { + } + + private static final record Both(Circle circle, Rect rect) { + } + + private static final record Square(int length) { + } + + public void main() { + Shape s = new Circle(); + switch (s) { + case Cricle(int r) -> System.out.println(r); + case Shape s -> System.out.println(c); + case Both(Circle c, Rect(int w, int _)) -> System.out.println("something"); + case Square -> { + int l = ((Square) s).length; + System.out.println(STR."Square with length \{Math.abs(l)}"); + } + } + + + if (s instanceof Circle(int r)) { + + } + } +} \ No newline at end of file diff --git a/core/src/test/resources/de/jplag/samples/NewJavaFeatures/B/Java21.java b/core/src/test/resources/de/jplag/samples/NewJavaFeatures/B/Java21.java new file mode 100644 index 000000000..ac503afab --- /dev/null +++ b/core/src/test/resources/de/jplag/samples/NewJavaFeatures/B/Java21.java @@ -0,0 +1,31 @@ +public class Java21 { + private static final record Circle(int radius) { + } + + private static final record Rect(int width, int height) { + } + + private static final record Both(Circle circle, Rect rect) { + } + + private static final record Square(int length) { + } + + public void main() { + Shape s = new Circle(); + switch (s) { + case Cricle(int r) -> System.out.println(r); + case Shape s -> System.out.println(c); + case Both(Circle c, Rect(int _, int w)) -> System.out.println("something"); + case Square -> { + int l = ((Square) s).length; + System.out.println(STR."Square with length \{Math.abs(l)}"); + } + } + + + if (s instanceof Circle(int r)) { + + } + } +} \ No newline at end of file diff --git a/core/src/test/resources/de/jplag/samples/NewJavaFeatures/blacklist.txt b/core/src/test/resources/de/jplag/samples/NewJavaFeatures/blacklist.txt index 163769f63..e69de29bb 100644 --- a/core/src/test/resources/de/jplag/samples/NewJavaFeatures/blacklist.txt +++ b/core/src/test/resources/de/jplag/samples/NewJavaFeatures/blacklist.txt @@ -1 +0,0 @@ -Java17Preview.java \ No newline at end of file diff --git a/endtoend-testing/pom.xml b/endtoend-testing/pom.xml index 370211bfa..a13a101fb 100644 --- a/endtoend-testing/pom.xml +++ b/endtoend-testing/pom.xml @@ -18,7 +18,6 @@ de.jplag cli ${revision} - test de.jplag diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/constants/TestDirectoryConstants.java b/endtoend-testing/src/main/java/de/jplag/endtoend/constants/TestDirectoryConstants.java index b0cd6a7ff..d1f21c0f9 100644 --- a/endtoend-testing/src/main/java/de/jplag/endtoend/constants/TestDirectoryConstants.java +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/constants/TestDirectoryConstants.java @@ -12,18 +12,17 @@ private TestDirectoryConstants() { } /** - * Base path to the saved results + * Base path to the resources directory */ - public static final Path BASE_PATH_TO_RESULT_JSON = Path.of("src", "test", "resources", "results"); + public static final Path BASE_PATH_TO_RESOURCES = Path.of("src", "test", "resources"); /** - * Base path to the endToEnd testing resources + * Base path to the saved results */ - public static final Path BASE_PATH_TO_LANGUAGE_RESOURCES = Path.of("src", "test", "resources", "languageTestFiles"); + public static final Path BASE_PATH_TO_RESULT_JSON = BASE_PATH_TO_RESOURCES.resolve(Path.of("results")); /** - * Create the complete path to the submission files. Here the temporary system path is extended with the - * "SUBMISSION_DIRECTORY_NAME", which is predefined in this class. + * Base path to the data set descriptors */ - public static final Path TEMPORARY_SUBMISSION_DIRECTORY_NAME = Path.of("target", "testing-directory-submission"); + public static final Path BASE_PATH_TO_DATA_SET_DESCRIPTORS = BASE_PATH_TO_RESOURCES.resolve(Path.of("dataSets")); } diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/helper/FileHelper.java b/endtoend-testing/src/main/java/de/jplag/endtoend/helper/FileHelper.java index 06f3232e4..ffcff5b2e 100644 --- a/endtoend-testing/src/main/java/de/jplag/endtoend/helper/FileHelper.java +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/helper/FileHelper.java @@ -1,12 +1,22 @@ package de.jplag.endtoend.helper; import java.io.File; +import java.io.FileOutputStream; import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.util.Enumeration; +import java.util.zip.ZipEntry; +import java.util.zip.ZipFile; /** * Helper class to perform all necessary operations or functions on files or folders. */ public class FileHelper { + private static final int ZIP_THRESHOLD_ENTRIES = 100000; + private static final int ZIP_THRESHOLD_SIZE = 1000000000; + private static final double ZIP_THRESHOLD_RATIO = 10; + private static final String ZIP_BOMB_ERROR_MESSAGE = "Refusing to unzip file (%s), because it seems to be a fork bomb"; private FileHelper() { // private constructor to prevent instantiation @@ -52,4 +62,65 @@ public static void createFileIfItDoesNotExist(File file) throws IOException { private static String createNewIOExceptionStringForFileOrFOlderCreation(File file) { return "The file/folder at the location [" + file.toString() + "] could not be created!"; } -} + + /** + * Unzips a given zip file into a given directory. + * @param zip The zip file to extract + * @param targetDirectory The target directory + * @throws IOException If io operations go wrong + */ + public static void unzip(File zip, File targetDirectory) throws IOException { + try (ZipFile zipFile = new ZipFile(zip)) { + Enumeration entries = zipFile.entries(); + + long totalSizeArchive = 0; + long totalEntriesArchive = 0; + + while (entries.hasMoreElements()) { + totalEntriesArchive++; + + ZipEntry entry = entries.nextElement(); + File unzippedFile = new File(targetDirectory, entry.getName()).getCanonicalFile(); + + if (unzippedFile.getAbsolutePath().startsWith(targetDirectory.getAbsolutePath())) { + if (entry.isDirectory()) { + unzippedFile.mkdirs(); + } else { + unzippedFile.getParentFile().mkdirs(); + totalSizeArchive += extractZipElement(entry, zipFile, zip, unzippedFile); + } + } + + if (totalSizeArchive > ZIP_THRESHOLD_SIZE) { + throw new IllegalStateException(String.format(ZIP_BOMB_ERROR_MESSAGE, zip.getAbsolutePath())); + } + if (totalEntriesArchive > ZIP_THRESHOLD_ENTRIES) { + throw new IllegalStateException(String.format(ZIP_BOMB_ERROR_MESSAGE, zip.getAbsolutePath())); + } + } + } + } + + private static long extractZipElement(ZipEntry entry, ZipFile zipFile, File zip, File target) throws IOException { + long totalSizeEntry = 0; + + try (InputStream inputStream = zipFile.getInputStream(entry)) { + try (OutputStream outputStream = new FileOutputStream(target)) { + byte[] buffer = new byte[2048]; + int count; + while ((count = inputStream.read(buffer)) > 0) { + outputStream.write(buffer, 0, count); + + totalSizeEntry += count; + + double compressionRate = (double) totalSizeEntry / entry.getCompressedSize(); + if (compressionRate > ZIP_THRESHOLD_RATIO) { + throw new IllegalStateException(String.format(ZIP_BOMB_ERROR_MESSAGE, zip.getAbsolutePath())); + } + } + } + } + + return totalSizeEntry; + } +} \ No newline at end of file diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/helper/LanguageDeserializer.java b/endtoend-testing/src/main/java/de/jplag/endtoend/helper/LanguageDeserializer.java new file mode 100644 index 000000000..07848b72e --- /dev/null +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/helper/LanguageDeserializer.java @@ -0,0 +1,21 @@ +package de.jplag.endtoend.helper; + +import java.io.IOException; + +import de.jplag.Language; +import de.jplag.cli.LanguageLoader; + +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonDeserializer; + +/** + * Deserialized a language from a json file + */ +public class LanguageDeserializer extends JsonDeserializer { + @Override + public Language deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) throws IOException { + String name = jsonParser.getText(); + return LanguageLoader.getLanguage(name).orElseThrow(() -> new IllegalStateException(String.format("Language %s not found.", name))); + } +} diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/helper/TestSuiteHelper.java b/endtoend-testing/src/main/java/de/jplag/endtoend/helper/TestSuiteHelper.java index bc4c03050..200323ae2 100644 --- a/endtoend-testing/src/main/java/de/jplag/endtoend/helper/TestSuiteHelper.java +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/helper/TestSuiteHelper.java @@ -1,13 +1,10 @@ package de.jplag.endtoend.helper; -import java.io.File; -import java.util.List; import java.util.stream.Collectors; +import java.util.stream.Stream; import de.jplag.JPlagComparison; -import de.jplag.Language; import de.jplag.Submission; -import de.jplag.endtoend.constants.TestDirectoryConstants; /** * Helper class to perform all necessary additional functions for the endToEnd tests. @@ -28,30 +25,8 @@ private TestSuiteHelper() { * @return unique identifier for test case recognition */ public static String getTestIdentifier(JPlagComparison jPlagComparison) { - return List.of(jPlagComparison.firstSubmission(), jPlagComparison.secondSubmission()).stream().map(Submission::getRoot) + return Stream.of(jPlagComparison.firstSubmission(), jPlagComparison.secondSubmission()).map(Submission::getRoot) .map(FileHelper::getFileNameWithoutFileExtension).sorted().collect(Collectors.joining("-")); } - - /** - * Returns the file pointing to the directory of the submissions for the given language and result json. The result - * json's name is expected to be equal to the test suite identifier. - * @param language is the language for the tests - * @param resultJSON is the json containing the expected values - * @return returns the directory of the submissions - */ - public static File getSubmissionDirectory(Language language, File resultJSON) { - return getSubmissionDirectory(language, FileHelper.getFileNameWithoutFileExtension(resultJSON)); - } - - /** - * Returns the file pointing to the directory of the submissions for the given language and test suite identifier as - * described in the Readme.md. - * @param language is the langauge for the tests - * @param testSuiteIdentifier is the test suite identifier of the tests - * @return returns the directory of the submissions - */ - public static File getSubmissionDirectory(Language language, String testSuiteIdentifier) { - return TestDirectoryConstants.BASE_PATH_TO_LANGUAGE_RESOURCES.resolve(language.getIdentifier()).resolve(testSuiteIdentifier).toFile(); - } } diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/helper/UnzipManager.java b/endtoend-testing/src/main/java/de/jplag/endtoend/helper/UnzipManager.java new file mode 100644 index 000000000..4c363d39c --- /dev/null +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/helper/UnzipManager.java @@ -0,0 +1,59 @@ +package de.jplag.endtoend.helper; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.attribute.FileAttribute; +import java.nio.file.attribute.PosixFilePermission; +import java.nio.file.attribute.PosixFilePermissions; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; +import java.util.logging.Logger; + +import org.apache.commons.lang3.SystemUtils; + +import de.jplag.endtoend.model.DataSet; + +public class UnzipManager { + private final Map unzippedFiles; + private static UnzipManager instance; + private final Logger logger = Logger.getLogger("Unzip Manager"); + + private static synchronized UnzipManager getInstance() { + if (instance == null) { + instance = new UnzipManager(); + } + + return instance; + } + + public static File unzipOrCache(DataSet dataSet, File zip) throws IOException { + return getInstance().unzipOrCacheInternal(dataSet, zip); + } + + private UnzipManager() { + this.unzippedFiles = new HashMap<>(); + } + + private File unzipOrCacheInternal(DataSet dataSet, File zip) throws IOException { + if (!unzippedFiles.containsKey(dataSet)) { + File target; + + if (SystemUtils.IS_OS_UNIX) { + FileAttribute> attr = PosixFilePermissions.asFileAttribute(PosixFilePermissions.fromString("rwx------")); + target = Files.createTempDirectory(zip.getName(), attr).toFile(); + } else { + target = Files.createTempDirectory(zip.getName()).toFile(); + if (!(target.setReadable(true, true) && target.setWritable(true, true) && target.setExecutable(true, true))) { + logger.warning("Could not set permissions for temp directory (" + target.getAbsolutePath() + ")."); + } + } + + FileHelper.unzip(zip, target); + this.unzippedFiles.put(dataSet, target); + } + + return this.unzippedFiles.get(dataSet); + } +} diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/model/ComparisonIdentifier.java b/endtoend-testing/src/main/java/de/jplag/endtoend/model/ComparisonIdentifier.java new file mode 100644 index 000000000..13760f56f --- /dev/null +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/model/ComparisonIdentifier.java @@ -0,0 +1,57 @@ +package de.jplag.endtoend.model; + +import java.io.File; +import java.io.FileNotFoundException; +import java.util.HashSet; +import java.util.Scanner; +import java.util.Set; + +/** + * Identifier for a comparison. The order of the names does not matter + * @param firstName The first name + * @param secondName The second name + */ +public record ComparisonIdentifier(String firstName, String secondName) { + private static final String INVALID_LINE_ERROR_MESSAGE = "Comparison identifier file (%s) has an invalid line: %s"; + + @Override + public boolean equals(Object o) { + if (!(o instanceof ComparisonIdentifier other)) { + return false; + } + + return (firstName.equals(other.firstName) && secondName.equals(other.secondName)) + || (secondName.equals(other.firstName) && firstName.equals(other.secondName)); + } + + @Override + public int hashCode() { + return firstName.hashCode() + secondName.hashCode(); + } + + /** + * Loads the identifiers stored in a csv (semicolon separated) file. + * @param file The file to load + * @return The comparisons in the file + */ + public static Set loadIdentifiersFromFile(File file, String delimiter) { + try (Scanner scanner = new Scanner(file)) { + Set identifiers = new HashSet<>(); + while (scanner.hasNextLine()) { + String[] parts = scanner.nextLine().split(delimiter); + if (parts.length != 2) { + throw new IllegalStateException(String.format(INVALID_LINE_ERROR_MESSAGE, file.getAbsolutePath(), String.join(delimiter, parts))); + } + identifiers.add(new ComparisonIdentifier(parts[0], parts[1])); + } + return identifiers; + } catch (FileNotFoundException e) { + throw new IllegalStateException(String.format("Comparisons could not be loaded for %s.", file.getName()), e); + } + } + + @Override + public String toString() { + return firstName + " - " + secondName; + } +} diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/model/DataSet.java b/endtoend-testing/src/main/java/de/jplag/endtoend/model/DataSet.java new file mode 100644 index 000000000..8c4bf91ff --- /dev/null +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/model/DataSet.java @@ -0,0 +1,105 @@ +package de.jplag.endtoend.model; + +import java.io.File; +import java.io.IOException; +import java.util.HashSet; +import java.util.Objects; +import java.util.Optional; +import java.util.Set; + +import de.jplag.Language; +import de.jplag.endtoend.constants.TestDirectoryConstants; +import de.jplag.endtoend.helper.LanguageDeserializer; +import de.jplag.endtoend.helper.UnzipManager; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; + +/** + * Represents a data set for the endToEnd test suite. + * @param name The name of the data set + * @param language The language + * @param format The format + * @param sourceLocation The source directory, may be null + * @param resultFile The result file name, may be null + * @param goldStandardFile The gold standard file, may be null + * @param options The options for the jplag runs, may be null + */ +public record DataSet(@JsonProperty(required = true) String name, + @JsonDeserialize(using = LanguageDeserializer.class) @JsonProperty(required = true) Language language, + @JsonProperty(required = true) DataSetFormat format, @JsonProperty String sourceLocation, @JsonProperty StorageFormat storageFormat, + @JsonProperty String resultFile, @JsonProperty String goldStandardFile, @JsonProperty String goldStandardDelimiter, + @JsonProperty Options options) { + + private static final String DEFAULT_GOLD_STANDARD_DELIMITER = ";"; + private static final String DEFAULT_SOURCE_DIRECTORY = "data/%s"; + private static final String DEFAULT_SOURCE_ZIP = "data/%s.zip"; + private static final String DEFAULT_RESULT_FILE_NAME = "%s.json"; + + /** + * Gets the source directories + * @return The source directories + */ + public Set getSourceDirectories() throws IOException { + return new HashSet<>(format.getSourceDirectories(this)); + } + + /** + * Helper function replacing null by the default value + * @return The source directory + */ + File actualSourceDirectory() throws IOException { + StorageFormat actualStorageFormat = storageFormat == null ? StorageFormat.DIRECTORY : storageFormat; + + if (actualStorageFormat == StorageFormat.DIRECTORY) { + String location = sourceLocation; + if (location == null) { + location = String.format(DEFAULT_SOURCE_DIRECTORY, this.name); + } + return new File(TestDirectoryConstants.BASE_PATH_TO_RESOURCES.toFile(), location); + } else if (actualStorageFormat == StorageFormat.ZIP) { + String location = sourceLocation; + if (location == null) { + location = String.format(DEFAULT_SOURCE_ZIP, this.name); + } + return UnzipManager.unzipOrCache(this, new File(TestDirectoryConstants.BASE_PATH_TO_RESOURCES.toFile(), location)); + } + + throw new IllegalStateException(); + } + + /** + * Helper function replacing null by the default value + * @return The result file + */ + public File getResultFile() { + if (resultFile == null) { + return new File(TestDirectoryConstants.BASE_PATH_TO_RESULT_JSON.toFile(), String.format(DEFAULT_RESULT_FILE_NAME, this.name)); + } else { + return new File(TestDirectoryConstants.BASE_PATH_TO_RESULT_JSON.toFile(), resultFile); + } + } + + /** + * @return The gold standard file as an optional. + */ + public Optional getGoldStandardFile() throws IOException { + File actualSourceDirectory = this.actualSourceDirectory(); + return Optional.ofNullable(this.goldStandardFile).map(name -> new File(actualSourceDirectory, name)); + } + + /** + * Helper function replacing null by the default value. + * @return The options + */ + public Options getOptions() { + return Objects.requireNonNullElseGet(this.options, Options::new); + } + + /** + * Returns the actual delimiter, replacing null by the default value + */ + public String getActualDelimiter() { + return Objects.requireNonNullElse(this.goldStandardDelimiter, DEFAULT_GOLD_STANDARD_DELIMITER); + } +} diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/model/DataSetFormat.java b/endtoend-testing/src/main/java/de/jplag/endtoend/model/DataSetFormat.java new file mode 100644 index 000000000..a3c312928 --- /dev/null +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/model/DataSetFormat.java @@ -0,0 +1,56 @@ +package de.jplag.endtoend.model; + +import java.io.File; +import java.io.IOException; +import java.util.Collections; +import java.util.Set; + +/** + * The available formats for data sets. + */ +@SuppressWarnings("unused") // The formats only referred to from the data set configuration +public enum DataSetFormat { + /** + * The progpedia format + */ + PROGPEDIA { + @Override + public Set getSourceDirectories(DataSet dataSet) throws IOException { + return Collections.singleton(new File(dataSet.actualSourceDirectory(), "ACCEPTED")); + } + + @Override + public File getBaseCodeDirectory(DataSet dataSet, String directoryName) throws IOException { + return new File(dataSet.actualSourceDirectory(), directoryName); + } + }, + /** + * Plain format where the submissions are flat within the source directory. + */ + PLAIN { + @Override + public Set getSourceDirectories(DataSet dataSet) throws IOException { + return Collections.singleton(dataSet.actualSourceDirectory()); + } + + @Override + public File getBaseCodeDirectory(DataSet dataSet, String directoryName) { + throw new IllegalStateException("Plain formatted data sets cannot include base code."); + } + }; + + /** + * Resolved the source directories for jplag + * @param dataSet The data set + * @return The source directories + */ + public abstract Set getSourceDirectories(DataSet dataSet) throws IOException; + + /** + * Resolves the base code directory + * @param dataSet The data set + * @param directoryName The name of the base code directory + * @return The base code directory + */ + public abstract File getBaseCodeDirectory(DataSet dataSet, String directoryName) throws IOException; +} diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/model/DataSetRunConfiguration.java b/endtoend-testing/src/main/java/de/jplag/endtoend/model/DataSetRunConfiguration.java new file mode 100644 index 000000000..2e0f59013 --- /dev/null +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/model/DataSetRunConfiguration.java @@ -0,0 +1,40 @@ +package de.jplag.endtoend.model; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.Set; + +import de.jplag.options.JPlagOptions; + +/** + * A run configuration for the end-to-end tests + * @param jPlagOptions The jplag options to use + * @param identifier The identifier for the configuration + */ +public record DataSetRunConfiguration(JPlagOptions jPlagOptions, String identifier) { + private static final String IDENTIFIER_FORMAT = "MTM: %s"; + + /** + * Builds all configurations for a data set + * @param dataSet The data set + * @return The configurations + */ + public static List generateRunConfigurations(DataSet dataSet) throws IOException { + Options configuredOptions = dataSet.getOptions(); + List result = new ArrayList<>(); + + for (int minimumTokenMatch : configuredOptions.getMinimumTokenMatches()) { + JPlagOptions options = new JPlagOptions(dataSet.language(), dataSet.getSourceDirectories(), Set.of()); + options = options.withMinimumTokenMatch(minimumTokenMatch); + if (configuredOptions.baseCodeDirectory() != null) { + File baseCode = dataSet.format().getBaseCodeDirectory(dataSet, configuredOptions.baseCodeDirectory()); + options = options.withBaseCodeSubmissionDirectory(baseCode); + } + result.add(new DataSetRunConfiguration(options, String.format(IDENTIFIER_FORMAT, minimumTokenMatch))); + } + + return result; + } +} diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/model/ExpectedResult.java b/endtoend-testing/src/main/java/de/jplag/endtoend/model/ExpectedResult.java index 8d1d95aac..ff2408adb 100644 --- a/endtoend-testing/src/main/java/de/jplag/endtoend/model/ExpectedResult.java +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/model/ExpectedResult.java @@ -1,13 +1,14 @@ package de.jplag.endtoend.model; +import de.jplag.JPlagComparison; import de.jplag.options.SimilarityMetric; import com.fasterxml.jackson.annotation.JsonProperty; /** * contains the current comparative values for the endToEnd tests. The comparative values were determined by discussion - * which can be found at https://github.com/jplag/JPlag/issues/548 Here this object is used for serialization and - * deserialization of the information from json to object or object to json. + * which can be found at GitHub.Here this object is used for + * serialization and deserialization of the information from json to object or object to json. */ public record ExpectedResult(@JsonProperty("minimal_similarity") double resultSimilarityMinimum, @JsonProperty("maximum_similarity") double resultSimilarityMaximum, @JsonProperty("matched_token_number") int resultMatchedTokenNumber) { @@ -23,8 +24,15 @@ public double getSimilarityForMetric(SimilarityMetric metric) { case MIN -> resultSimilarityMinimum(); case MAX -> resultSimilarityMaximum(); case INTERSECTION -> resultMatchedTokenNumber(); - default -> throw new IllegalArgumentException("Metric not supported!"); }; } + /** + * Creates an expected result from a comparison + * @param comparison The comparison + * @return The expected result + */ + public static ExpectedResult fromComparison(JPlagComparison comparison) { + return new ExpectedResult(comparison.minimalSimilarity(), comparison.maximalSimilarity(), comparison.getNumberOfMatchedTokens()); + } } diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/model/GoldStandard.java b/endtoend-testing/src/main/java/de/jplag/endtoend/model/GoldStandard.java new file mode 100644 index 000000000..60afa0d0f --- /dev/null +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/model/GoldStandard.java @@ -0,0 +1,33 @@ +package de.jplag.endtoend.model; + +import java.util.Collection; +import java.util.DoubleSummaryStatistics; +import java.util.Set; + +import de.jplag.JPlagComparison; + +import com.fasterxml.jackson.annotation.JsonProperty; + +/** + * The data for the gold standard. + * @param matchAverage The average similarity of all submission in the gold standard + * @param nonMatchAverage The average similarity of all submission outside the gold standard + */ +public record GoldStandard(@JsonProperty double matchAverage, @JsonProperty double nonMatchAverage) { + public static GoldStandard buildFromComparisons(Collection comparisonList, Set comparisonIdentifiers) { + DoubleSummaryStatistics match = new DoubleSummaryStatistics(); + DoubleSummaryStatistics nonMatch = new DoubleSummaryStatistics(); + + for (JPlagComparison comparison : comparisonList) { + ComparisonIdentifier comparisonIdentifier = new ComparisonIdentifier(comparison.firstSubmission().getName(), + comparison.secondSubmission().getName()); + if (comparisonIdentifiers.contains(comparisonIdentifier)) { + match.accept(comparison.similarity()); + } else { + nonMatch.accept(comparison.similarity()); + } + } + + return new GoldStandard(match.getAverage(), nonMatch.getAverage()); + } +} diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/model/Options.java b/endtoend-testing/src/main/java/de/jplag/endtoend/model/Options.java index a6fcbf10c..651f7d5bb 100644 --- a/endtoend-testing/src/main/java/de/jplag/endtoend/model/Options.java +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/model/Options.java @@ -1,10 +1,63 @@ package de.jplag.endtoend.model; +import java.util.Arrays; +import java.util.Objects; + import com.fasterxml.jackson.annotation.JsonProperty; /** - * The object contains required options for the endToEndt tests which are important for the test suite. The options were - * determined by discussion which can be found at https://github.com/jplag/JPlag/issues/590. + * The object contains required options for the endToEnd tests which are important for the test suite. */ -public record Options(@JsonProperty("minimum_token_match") Integer minimumTokenMatch) { +public record Options(@JsonProperty Integer[] minimumTokenMatches, @JsonProperty String baseCodeDirectory) { + + private static final int[] defaultTokenMatches = new int[] {3, 9}; + + /** + * Initializes a new options object with minimumTokenMatch and baseCodeDirectory both being null + */ + public Options() { + this(null, null); + } + + /** + * Builds the list of all token matches that should be checked. That means all values from minimumTokenMatches and the + * default values (3 and 9) + * @return The values + */ + public int[] getMinimumTokenMatches() { + Integer[] configuredValues = minimumTokenMatches; + if (configuredValues == null) { + configuredValues = new Integer[0]; + } + + int[] values = new int[configuredValues.length + defaultTokenMatches.length]; + System.arraycopy(defaultTokenMatches, 0, values, 0, defaultTokenMatches.length); + for (int i = 0; i < configuredValues.length; i++) { + values[defaultTokenMatches.length + i] = configuredValues[i]; + } + + return values; + } + + @Override + public boolean equals(Object o) { + if (this == o) + return true; + if (o == null || getClass() != o.getClass()) + return false; + Options options = (Options) o; + return Arrays.equals(minimumTokenMatches, options.minimumTokenMatches) && Objects.equals(baseCodeDirectory, options.baseCodeDirectory); + } + + @Override + public int hashCode() { + int result = Objects.hash(baseCodeDirectory); + result = 31 * result + Arrays.hashCode(minimumTokenMatches); + return result; + } + + @Override + public String toString() { + return "Options{" + "minimumTokenMatches=" + Arrays.toString(minimumTokenMatches) + ", baseCodeDirectory='" + baseCodeDirectory + '\'' + '}'; + } } diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/model/ResultDescription.java b/endtoend-testing/src/main/java/de/jplag/endtoend/model/ResultDescription.java index e5935f9f4..81ebc6627 100644 --- a/endtoend-testing/src/main/java/de/jplag/endtoend/model/ResultDescription.java +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/model/ResultDescription.java @@ -2,7 +2,6 @@ import java.util.Map; -import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; /** @@ -10,6 +9,6 @@ * data and its results for each possible option specified. this is important both for serializing the data into json * format and for deserialization. */ -public record ResultDescription(@JsonIgnore String languageIdentifier, @JsonProperty("options") Options options, - @JsonProperty("tests") Map identifierToResultMap) { +public record ResultDescription(@JsonProperty String identifier, @JsonProperty("tests") Map identifierToResultMap, + @JsonProperty GoldStandard goldStandard) { } \ No newline at end of file diff --git a/endtoend-testing/src/main/java/de/jplag/endtoend/model/StorageFormat.java b/endtoend-testing/src/main/java/de/jplag/endtoend/model/StorageFormat.java new file mode 100644 index 000000000..ad60f2c32 --- /dev/null +++ b/endtoend-testing/src/main/java/de/jplag/endtoend/model/StorageFormat.java @@ -0,0 +1,6 @@ +package de.jplag.endtoend.model; + +public enum StorageFormat { + DIRECTORY, + ZIP +} diff --git a/endtoend-testing/src/test/java/de/jplag/endtoend/EndToEndGeneratorTest.java b/endtoend-testing/src/test/java/de/jplag/endtoend/EndToEndGeneratorTest.java index 2e8c4f0df..7d66b3274 100644 --- a/endtoend-testing/src/test/java/de/jplag/endtoend/EndToEndGeneratorTest.java +++ b/endtoend-testing/src/test/java/de/jplag/endtoend/EndToEndGeneratorTest.java @@ -5,7 +5,6 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; -import java.util.Set; import java.util.stream.Collectors; import org.junit.jupiter.api.Disabled; @@ -16,13 +15,14 @@ import de.jplag.JPlag; import de.jplag.JPlagComparison; import de.jplag.JPlagResult; -import de.jplag.Language; -import de.jplag.cli.LanguageLoader; import de.jplag.endtoend.constants.TestDirectoryConstants; import de.jplag.endtoend.helper.FileHelper; import de.jplag.endtoend.helper.TestSuiteHelper; +import de.jplag.endtoend.model.ComparisonIdentifier; +import de.jplag.endtoend.model.DataSet; +import de.jplag.endtoend.model.DataSetRunConfiguration; import de.jplag.endtoend.model.ExpectedResult; -import de.jplag.endtoend.model.Options; +import de.jplag.endtoend.model.GoldStandard; import de.jplag.endtoend.model.ResultDescription; import de.jplag.exceptions.ExitException; import de.jplag.options.JPlagOptions; @@ -32,54 +32,54 @@ /** * Test class for automatically generating the json file describing the expected results. To generate a result json, - * adapt the three constants to your requirements and enable the test case. + * adapt the DATA_SET constant. */ class EndToEndGeneratorTest { - private static final String LANGUAGE_IDENTIFIER = "java"; - private static final String TEST_SUITE_IDENTIFIER = "sortAlgo"; - private static final List OPTIONS = List.of(new Options(3), new Options(9)); + private static final String DATA_SET = "progpedia"; private static final Logger logger = LoggerFactory.getLogger(EndToEndGeneratorTest.class); @Disabled("only enable to generate result json file") @Test void generateResultJson() throws ExitException, IOException { - Language language = LanguageLoader.getLanguage(LANGUAGE_IDENTIFIER).orElseThrow(); - File submissionDirectory = TestSuiteHelper.getSubmissionDirectory(language, TEST_SUITE_IDENTIFIER); + DataSet dataSet = new ObjectMapper() + .readValue(new File(TestDirectoryConstants.BASE_PATH_TO_DATA_SET_DESCRIPTORS.toFile(), DATA_SET + ".json"), DataSet.class); List resultDescriptions = new ArrayList<>(); - for (var option : OPTIONS) { - JPlagOptions options = new JPlagOptions(language, Set.of(submissionDirectory), Set.of()) - .withMinimumTokenMatch(option.minimumTokenMatch()); - JPlagResult jplagResult = JPlag.run(options); - List jPlagComparisons = jplagResult.getAllComparisons(); - Map expectedResults = jPlagComparisons.stream() - .collect(Collectors.toMap(TestSuiteHelper::getTestIdentifier, comparison -> new ExpectedResult(comparison.minimalSimilarity(), - comparison.maximalSimilarity(), comparison.getNumberOfMatchedTokens()))); - resultDescriptions.add(new ResultDescription(language.getIdentifier(), option, expectedResults)); + + for (DataSetRunConfiguration runConfiguration : DataSetRunConfiguration.generateRunConfigurations(dataSet)) { + JPlagOptions options = runConfiguration.jPlagOptions(); + JPlagResult result = JPlag.run(options); + List comparisons = result.getAllComparisons(); + Map expectedResults = comparisons.stream() + .collect(Collectors.toMap(TestSuiteHelper::getTestIdentifier, ExpectedResult::fromComparison)); + + GoldStandard goldStandard = null; + if (dataSet.getGoldStandardFile().isPresent()) { + goldStandard = GoldStandard.buildFromComparisons(comparisons, + ComparisonIdentifier.loadIdentifiersFromFile(dataSet.getGoldStandardFile().get(), dataSet.getActualDelimiter())); + } + + resultDescriptions.add(new ResultDescription(runConfiguration.identifier(), expectedResults, goldStandard)); } - File outputFile = writeJsonModelsToJsonFile(resultDescriptions, TEST_SUITE_IDENTIFIER, LANGUAGE_IDENTIFIER); + + File outputFile = writeJsonModelsToJsonFile(resultDescriptions, dataSet); logger.info("result JSON written to file '{}'", outputFile); } /** * Saves the passed object as a json file to the file identified by the test suite and language. Returns that file. * @param resultDescriptions list of elements to be saved - * @param testSuiteIdentifier identifier of the test suite - * @param languageIdentifier identifier of the language - * @throws IOException Signals that an I/O exception of some sort has occurred. Thisclass is the general class of + * @param dataSet The data set the elements are for + * @throws IOException Signals that an I/O exception, of some sort, has occurred. Thisclass is the general class of * exceptions produced by failed orinterrupted I/O operations. */ - private static File writeJsonModelsToJsonFile(List resultDescriptions, String testSuiteIdentifier, String languageIdentifier) - throws IOException { + private static File writeJsonModelsToJsonFile(List resultDescriptions, DataSet dataSet) throws IOException { ObjectWriter writer = new ObjectMapper().writer().withDefaultPrettyPrinter(); - File outputFile = TestDirectoryConstants.TEMPORARY_SUBMISSION_DIRECTORY_NAME.resolve(languageIdentifier) - .resolve(testSuiteIdentifier + ".json").toFile(); + File outputFile = dataSet.getResultFile(); FileHelper.createDirectoryIfItDoesNotExist(outputFile.getParentFile()); FileHelper.createFileIfItDoesNotExist(outputFile); - // convert book object to JSON file - writer.writeValue(outputFile, resultDescriptions.toArray()); return outputFile; diff --git a/endtoend-testing/src/test/java/de/jplag/endtoend/EndToEndSuiteTest.java b/endtoend-testing/src/test/java/de/jplag/endtoend/EndToEndSuiteTest.java index c5ffa4cb3..30bb375b6 100644 --- a/endtoend-testing/src/test/java/de/jplag/endtoend/EndToEndSuiteTest.java +++ b/endtoend-testing/src/test/java/de/jplag/endtoend/EndToEndSuiteTest.java @@ -14,12 +14,17 @@ import java.util.Arrays; import java.util.Collection; import java.util.DoubleSummaryStatistics; +import java.util.HashMap; import java.util.LinkedList; import java.util.List; +import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.stream.Collectors; +import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.DynamicContainer; +import org.junit.jupiter.api.DynamicNode; import org.junit.jupiter.api.DynamicTest; import org.junit.jupiter.api.TestFactory; @@ -27,12 +32,16 @@ import de.jplag.JPlagComparison; import de.jplag.JPlagResult; import de.jplag.Language; -import de.jplag.cli.LanguageLoader; +import de.jplag.Submission; import de.jplag.endtoend.constants.TestDirectoryConstants; import de.jplag.endtoend.helper.DeltaSummaryStatistics; import de.jplag.endtoend.helper.FileHelper; import de.jplag.endtoend.helper.TestSuiteHelper; +import de.jplag.endtoend.model.ComparisonIdentifier; +import de.jplag.endtoend.model.DataSet; +import de.jplag.endtoend.model.DataSetRunConfiguration; import de.jplag.endtoend.model.ExpectedResult; +import de.jplag.endtoend.model.GoldStandard; import de.jplag.endtoend.model.ResultDescription; import de.jplag.exceptions.ExitException; import de.jplag.options.JPlagOptions; @@ -46,66 +55,106 @@ * previous ones stored in the resource folder. */ class EndToEndSuiteTest { - private static final double EPSILON = 1E-8; + private static final double EPSILON = 1E-6; /** * Creates the test cases over all language options for which data is available and the current test options. * @return dynamic test cases across all test data and languages - * @throws IOException is thrown for all problems that may occur while parsing the json file. + * @throws ExitException If JPlag throws an error */ @TestFactory - Collection endToEndTestFactory() throws ExitException { - File resultDirectory = TestDirectoryConstants.BASE_PATH_TO_RESULT_JSON.toFile(); - List languageDirectories = Arrays.asList(resultDirectory.listFiles(File::isDirectory)); + Collection endToEndTestFactory() throws ExitException, IOException { + File descriptorDirectory = TestDirectoryConstants.BASE_PATH_TO_DATA_SET_DESCRIPTORS.toFile(); + List testDescriptorFiles = Arrays.asList(Objects.requireNonNull(descriptorDirectory.listFiles())); List allTests = new ArrayList<>(); - for (File languageDirectory : languageDirectories) { - allTests.add(generateTestForLanguage(languageDirectory)); + + Map> dataSetsByLanguage = testDescriptorFiles.stream().map(testDescriptorFile -> { + try { + return new ObjectMapper().readValue(testDescriptorFile, DataSet.class); + } catch (IOException e) { + throw new IllegalStateException("The test descriptor " + testDescriptorFile.getName() + " is invalid."); + } + }).collect(Collectors.groupingBy(DataSet::language)); + + for (Language language : dataSetsByLanguage.keySet()) { + allTests.add(generateTestForLanguage(language, dataSetsByLanguage.get(language))); } + return allTests; } - private DynamicContainer generateTestForLanguage(File languageDirectory) throws ExitException { - Language language = LanguageLoader.getLanguage(languageDirectory.getName()).orElseThrow(); - File[] resultJsons = languageDirectory.listFiles(file -> !file.isDirectory() && file.getName().endsWith(".json")); + /** + * Generates the tests for the given language + * @param language The language + * @param dataSets The data sets for this language + * @return The dynamic container containing the tests + * @throws ExitException If JPlag throws an error + */ + private DynamicContainer generateTestForLanguage(Language language, List dataSets) throws ExitException, IOException { List languageTests = new LinkedList<>(); - for (File resultJson : resultJsons) { // for each data set - languageTests.add(generateTestsForDataSet(language, resultJson)); + for (DataSet dataSet : dataSets) { + languageTests.add(generateTestsForDataSet(dataSet)); } return DynamicContainer.dynamicContainer(language.getIdentifier(), languageTests); } - private DynamicContainer generateTestsForDataSet(Language language, File resultJson) throws ExitException { + /** + * Generates tests for a data set + * @param dataSet The data set + * @return The dynamic container containing the tests + * @throws ExitException If JPlag throws an error + */ + private DynamicContainer generateTestsForDataSet(DataSet dataSet) throws ExitException, IOException { List testContainers = new LinkedList<>(); - ResultDescription[] results; + Map results = new HashMap<>(); try { - results = new ObjectMapper().readValue(resultJson, ResultDescription[].class); + ResultDescription[] resultList = new ObjectMapper().readValue(dataSet.getResultFile(), ResultDescription[].class); + for (ResultDescription resultDescription : resultList) { + results.put(resultDescription.identifier(), resultDescription); + } } catch (IOException exception) { throw new IllegalStateException("Could not load expected values.", exception); } - for (var result : results) { // for each configuration - var testCases = generateTestsForResultDescription(resultJson, result, language); - testContainers.add(DynamicContainer.dynamicContainer("MTM: " + result.options().minimumTokenMatch(), testCases)); + + for (DataSetRunConfiguration runConfiguration : DataSetRunConfiguration.generateRunConfigurations(dataSet)) { + if (!results.containsKey(runConfiguration.identifier())) { + throw new IllegalStateException("Expected results don't match data set configuration"); + } + testContainers.add(generateTestsForResultDescription(results.get(runConfiguration.identifier()), dataSet, runConfiguration)); } - return DynamicContainer.dynamicContainer(FileHelper.getFileNameWithoutFileExtension(resultJson), testContainers); + + return DynamicContainer.dynamicContainer(FileHelper.getFileNameWithoutFileExtension(dataSet.getResultFile()), testContainers); } /** * Generates test cases for each test described in the provided result object. - * @param resultJson is the file of the result json * @param result is one test suite configuration of the deserialized {@code resultJson} - * @param language is the language to run JPlag with + * @param dataSet The data set, the test is for + * @param runConfiguration The run configuration for the test * @return a collection of test cases, each validating one {@link JPlagResult} against its {@link ExpectedResult} * counterpart + * @throws ExitException If JPlag throw an error */ - private Collection generateTestsForResultDescription(File resultJson, ResultDescription result, Language language) - throws ExitException { - File submissionDirectory = TestSuiteHelper.getSubmissionDirectory(language, resultJson); - JPlagOptions options = new JPlagOptions(language, Set.of(submissionDirectory), Set.of()) - .withMinimumTokenMatch(result.options().minimumTokenMatch()); + private DynamicContainer generateTestsForResultDescription(ResultDescription result, DataSet dataSet, DataSetRunConfiguration runConfiguration) + throws ExitException, IOException { + JPlagOptions options = runConfiguration.jPlagOptions(); JPlagResult jplagResult = JPlag.run(options); - var comparisons = jplagResult.getAllComparisons().stream().collect(Collectors.toMap(it -> TestSuiteHelper.getTestIdentifier(it), it -> it)); + var comparisons = jplagResult.getAllComparisons().stream().collect(Collectors.toMap(TestSuiteHelper::getTestIdentifier, it -> it)); assertEquals(result.identifierToResultMap().size(), comparisons.size(), "different number of results and expected results"); + DynamicContainer comparisonTests = generateTestResultsForComparisons(result, comparisons); + DynamicNode detectionTest = generateGoldStandardTest(dataSet, comparisons, result.goldStandard()); + + return DynamicContainer.dynamicContainer(runConfiguration.identifier(), List.of(comparisonTests, detectionTest)); + } + + /** + * Generates the test cases for the individual comparisons + * @param result The result description for the tests + * @param comparisons The comparisons + * @return The container with the tests + */ + private DynamicContainer generateTestResultsForComparisons(ResultDescription result, Map comparisons) { DeltaSummaryStatistics statistics = new DeltaSummaryStatistics(); var tests = new ArrayList<>(result.identifierToResultMap().keySet().stream().map(identifier -> { JPlagComparison comparison = comparisons.get(identifier); @@ -113,7 +162,8 @@ private Collection generateTestsForResultDescription(File resultJso return generateTest(identifier, expectedResult, comparison, statistics); }).toList()); tests.addAll(evaluateDeviationOfSimilarity(statistics)); - return tests; + + return DynamicContainer.dynamicContainer("comparison changes", tests); } /** @@ -137,29 +187,65 @@ private DynamicTest generateTest(String name, ExpectedResult expectedResult, JPl if (expectedResult.resultMatchedTokenNumber() != result.getNumberOfMatchedTokens()) { errors.add(formattedValidationError(INTERSECTION, expectedResult.resultMatchedTokenNumber(), result.getNumberOfMatchedTokens())); } - assertTrue(errors.isEmpty(), createValidationErrorOutput(name, errors)); + assertTrue(errors.isEmpty(), createValidationErrorOutput(name, errors, result)); }); } + /** + * Generates the tests for the gold standard + * @param dataSet The data set + * @param comparisonMap The comparisons + * @param goldStandard The gold standard previously saved + * @return The node containing the tests + */ + private DynamicNode generateGoldStandardTest(DataSet dataSet, Map comparisonMap, GoldStandard goldStandard) + throws IOException { + if (goldStandard != null) { + Set goldStandardIdentifiers = ComparisonIdentifier + .loadIdentifiersFromFile(dataSet.getGoldStandardFile().orElseThrow(), dataSet.getActualDelimiter()); + GoldStandard found = GoldStandard.buildFromComparisons(comparisonMap.values(), goldStandardIdentifiers); + + DynamicTest goldStandardMatch = DynamicTest.dynamicTest("expected plagiarism comparisons average similarity", + () -> assertEquals(goldStandard.matchAverage(), found.matchAverage(), EPSILON, + "expected plagiarism comparisons have deviating similarities")); + + DynamicTest goldStandardNonMatch = DynamicTest.dynamicTest("expected non plagiarism comparisons average", + () -> assertEquals(goldStandard.nonMatchAverage(), found.nonMatchAverage(), EPSILON, + "expected non plagiarism comparisons have deviating similarities")); + + return DynamicContainer.dynamicContainer("expected plagiarism test", List.of(goldStandardMatch, goldStandardNonMatch)); + } else { + return DynamicTest.dynamicTest("expected plagiarisms skipped", + () -> Assumptions.abort("The expected plagiarisms test is skipped, because no expected plagiarisms are defined.")); + } + } + /** * Creates the display message for a result value validation error. - * @param valueName Name of the failed test object + * @param metric The metric the test failed for * @param actualValue actual test value * @param expectedValue expected test value */ private String formattedValidationError(SimilarityMetric metric, Number actualValue, Number expectedValue) { - return metric + " was " + String.valueOf(actualValue) + " but expected " + String.valueOf(expectedValue); + return metric + " was " + actualValue + " but expected " + expectedValue; } /** * Creates the display info from the passed failed test results * @return formatted text for the failed comparative values of the current test */ - private String createValidationErrorOutput(String name, List validationErrors) { + private String createValidationErrorOutput(String name, List validationErrors, JPlagComparison result) { return name + ": There were " + validationErrors.size() + " validation error(s):" + System.lineSeparator() - + String.join(System.lineSeparator(), validationErrors); + + String.join(System.lineSeparator(), validationErrors) + System.lineSeparator() + "First file tokens: " + + String.join(",", getTokenNames(result.firstSubmission())) + System.lineSeparator() + "Second file tokens: " + + String.join(",", getTokenNames(result.secondSubmission())); } + /** + * Creates the tests for the average deviation + * @param deltaStatistics The deltas + * @return The list of tests + */ private List evaluateDeviationOfSimilarity(DeltaSummaryStatistics deltaStatistics) { return List.of(deviationOfSimilarityTest("positive", deltaStatistics.getPositiveStatistics()), deviationOfSimilarityTest("negative", deltaStatistics.getNegativeStatistics())); @@ -168,8 +254,18 @@ private List evaluateDeviationOfSimilarity(DeltaSummaryStatistics d private DynamicTest deviationOfSimilarityTest(String textualSign, DoubleSummaryStatistics statistics) { return DynamicTest.dynamicTest("OVERVIEW: " + textualSign + " similarity deviation", () -> { if (Math.abs(statistics.getAverage()) > EPSILON) { - fail(textualSign + " deviation over all AVG similarity values:" + System.lineSeparator() + statistics.toString()); + fail(textualSign + " deviation over all AVG similarity values:" + System.lineSeparator() + statistics); } }); } + + private List getTokenNames(Submission submission) { + return submission.getTokenList().stream().map(it -> { + if (Enum.class.isAssignableFrom(it.getType().getClass())) { + return ((Enum) it.getType()).name(); + } else { + return it.getType().getDescription(); + } + }).toList(); + } } diff --git a/endtoend-testing/src/test/resources/data/progpedia.zip b/endtoend-testing/src/test/resources/data/progpedia.zip new file mode 100644 index 000000000..1fa74c527 Binary files /dev/null and b/endtoend-testing/src/test/resources/data/progpedia.zip differ diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_2.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_2.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_2.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_2.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_3.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_3.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_3.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_3.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_4.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_4.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_4.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_4.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_5.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_5.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_5.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_5.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_6.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_6.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo1_6.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo1_6.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo2.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo2.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo2.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo2.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo2_5.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo2_5.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo2_5.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo2_5.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo3.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo3.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo3.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo3.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo3_5.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo3_5.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo3_5.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo3_5.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo3_6.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo3_6.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo3_6.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo3_6.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo4.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo4.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo4.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo4.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo4d1.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo4d1.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo4d1.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo4d1.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo4d2.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo4d2.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo4d2.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo4d2.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo4d3.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo4d3.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo4d3.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo4d3.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo5.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo5.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo5.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo5.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo6.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo6.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo6.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo6.java diff --git a/endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo7.java b/endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo7.java similarity index 100% rename from endtoend-testing/src/test/resources/languageTestFiles/java/sortAlgo/SortAlgo7.java rename to endtoend-testing/src/test/resources/data/sortAlgo/SortAlgo7.java diff --git a/endtoend-testing/src/test/resources/dataSetTemplate.json b/endtoend-testing/src/test/resources/dataSetTemplate.json new file mode 100644 index 000000000..fe10e8d15 --- /dev/null +++ b/endtoend-testing/src/test/resources/dataSetTemplate.json @@ -0,0 +1,13 @@ +{ + "name": "The name of the data set.", + "language": "The language identifier for the data set.", + "format": "The format of the data set. Must be defined in de.jplag.endtoend.model.DataSetFormat.", + "sourceDirectory": "The root directory of the data set. The contents need to match the format.", + "resultFile": "(optional) The path to the result file. If not set defaults to: results/$name.json.", + "goldStandardFile": "(optional) Set to activate the gold standard test.", + "options": { + "_comment": "(optional) Provide to specify options for jplag", + "minimumTokenMatches": [" (optional) add additional minimum token matches to check for the data set. 3 and 9 are always checked."], + "baseCodeDirectory": "(optional) here you can provide the name of the base code directory. The exact path will be resolved using the format" + } +} \ No newline at end of file diff --git a/endtoend-testing/src/test/resources/dataSets/progpedia.json b/endtoend-testing/src/test/resources/dataSets/progpedia.json new file mode 100644 index 000000000..531e6777d --- /dev/null +++ b/endtoend-testing/src/test/resources/dataSets/progpedia.json @@ -0,0 +1,10 @@ +{ + "name": "progpedia", + "language": "java", + "format": "PROGPEDIA", + "storageFormat": "ZIP", + "goldStandardFile": "plagiate.csv", + "options": { + "baseCodeDirectory": "base" + } +} \ No newline at end of file diff --git a/endtoend-testing/src/test/resources/dataSets/sortAlgo.json b/endtoend-testing/src/test/resources/dataSets/sortAlgo.json new file mode 100644 index 000000000..6875d569e --- /dev/null +++ b/endtoend-testing/src/test/resources/dataSets/sortAlgo.json @@ -0,0 +1,5 @@ +{ + "name": "sortAlgo", + "language": "java", + "format": "PLAIN" +} \ No newline at end of file diff --git a/endtoend-testing/src/test/resources/results/progpedia.json b/endtoend-testing/src/test/resources/results/progpedia.json new file mode 100644 index 000000000..ec8aad38b --- /dev/null +++ b/endtoend-testing/src/test/resources/results/progpedia.json @@ -0,0 +1,21467 @@ +[ { + "tests" : { + "00113_00002-00141_00002" : { + "minimal_similarity" : 0.5819672131147541, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00092_00001-00197_00001" : { + "minimal_similarity" : 0.48484848484848486, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00140_00001-00154_00002" : { + "minimal_similarity" : 0.5630252100840336, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00013_00002-00129_00008" : { + "minimal_similarity" : 0.32340425531914896, + "maximum_similarity" : 0.8, + "matched_token_number" : 76 + }, + "00005_00002-00125_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00147_00001-00178_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00002-00119_00001" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00119_00001-00125_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00141_00002-00194_00001" : { + "minimal_similarity" : 0.9722222222222222, + "maximum_similarity" : 0.9722222222222222, + "matched_token_number" : 105 + }, + "00129_00008-00196_00001" : { + "minimal_similarity" : 0.4037854889589905, + "maximum_similarity" : 0.5446808510638298, + "matched_token_number" : 128 + }, + "00135_00001-00195_00002" : { + "minimal_similarity" : 0.4178082191780822, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00005-00194_00001" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00145_00001-00160_00001" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6747967479674797, + "matched_token_number" : 83 + }, + "00153_00001-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00136_00002-00142_00001" : { + "minimal_similarity" : 0.2722222222222222, + "maximum_similarity" : 0.4152542372881356, + "matched_token_number" : 49 + }, + "00202_00002-00204_00001" : { + "minimal_similarity" : 0.6028368794326241, + "maximum_similarity" : 0.7083333333333334, + "matched_token_number" : 85 + }, + "00135_00001-00195_00001" : { + "minimal_similarity" : 0.4178082191780822, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00031_00002-00160_00001" : { + "minimal_similarity" : 0.35294117647058826, + "maximum_similarity" : 0.5217391304347826, + "matched_token_number" : 48 + }, + "00153_00001-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00000_00003-00199_00001" : { + "minimal_similarity" : 0.5294117647058824, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00126_00002-00177_00003" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00183_00004-00196_00001" : { + "minimal_similarity" : 0.2744479495268139, + "maximum_similarity" : 0.6170212765957447, + "matched_token_number" : 87 + }, + "00005_00002-00192_00002" : { + "minimal_similarity" : 0.5375, + "maximum_similarity" : 0.6564885496183206, + "matched_token_number" : 86 + }, + "00031_00002-00203_00002" : { + "minimal_similarity" : 0.43795620437956206, + "maximum_similarity" : 0.6521739130434783, + "matched_token_number" : 60 + }, + "00005_00002-00192_00001" : { + "minimal_similarity" : 0.55, + "maximum_similarity" : 0.567741935483871, + "matched_token_number" : 88 + }, + "00177_00003-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00177_00003-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00156_00003-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5, + "matched_token_number" : 68 + }, + "00000_00001-00199_00001" : { + "minimal_similarity" : 0.5204081632653061, + "maximum_similarity" : 0.5368421052631579, + "matched_token_number" : 51 + }, + "00145_00001-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00145_00001-00186_00004" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00125_00001-00137_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00031_00003-00199_00001" : { + "minimal_similarity" : 0.45263157894736844, + "maximum_similarity" : 0.5058823529411764, + "matched_token_number" : 43 + }, + "00138_00001-00147_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 118 + }, + "00134_00001-00142_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.691358024691358, + "matched_token_number" : 56 + }, + "00005_00002-00120_00001" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00195_00001-00204_00001" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.4745762711864407, + "matched_token_number" : 56 + }, + "00120_00001-00198_00001" : { + "minimal_similarity" : 0.3881578947368421, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00137_00002-00195_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00137_00002-00195_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00155_00001-00177_00003" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00000_00001-00127_00002" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00031_00002-00119_00001" : { + "minimal_similarity" : 0.5185185185185185, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00097_00002-00195_00002" : { + "minimal_similarity" : 0.4576271186440678, + "maximum_similarity" : 0.5094339622641509, + "matched_token_number" : 54 + }, + "00097_00002-00195_00001" : { + "minimal_similarity" : 0.4576271186440678, + "maximum_similarity" : 0.5094339622641509, + "matched_token_number" : 54 + }, + "00127_00002-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5528455284552846, + "matched_token_number" : 68 + }, + "00000_00002-00160_00001" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.5565217391304348, + "matched_token_number" : 64 + }, + "00120_00001-00126_00002" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00133_00001-00136_00002" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5853658536585366, + "matched_token_number" : 72 + }, + "00154_00002-00183_00004" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.5042016806722689, + "matched_token_number" : 60 + }, + "00127_00002-00137_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00014_00001-00202_00002" : { + "minimal_similarity" : 0.475177304964539, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00000_00005-00199_00001" : { + "minimal_similarity" : 0.48333333333333334, + "maximum_similarity" : 0.6105263157894737, + "matched_token_number" : 58 + }, + "00134_00001-00201_00001" : { + "minimal_similarity" : 0.367816091954023, + "maximum_similarity" : 0.3950617283950617, + "matched_token_number" : 32 + }, + "00184_00003-00202_00002" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.6382978723404256, + "matched_token_number" : 60 + }, + "00044_00002-00196_00001" : { + "minimal_similarity" : 0.11041009463722397, + "maximum_similarity" : 0.35353535353535354, + "matched_token_number" : 35 + }, + "00178_00002-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6422764227642277, + "matched_token_number" : 79 + }, + "00184_00003-00202_00003" : { + "minimal_similarity" : 0.4397163120567376, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 62 + }, + "00031_00002-00186_00002" : { + "minimal_similarity" : 0.4057971014492754, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00000_00001-00194_00001" : { + "minimal_similarity" : 0.5277777777777778, + "maximum_similarity" : 0.5816326530612245, + "matched_token_number" : 57 + }, + "00031_00002-00186_00004" : { + "minimal_similarity" : 0.4528301886792453, + "maximum_similarity" : 0.5217391304347826, + "matched_token_number" : 48 + }, + "00014_00001-00202_00003" : { + "minimal_similarity" : 0.45390070921985815, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 64 + }, + "00000_00003-00194_00001" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5462962962962963, + "matched_token_number" : 59 + }, + "00119_00001-00120_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00013_00002-00014_00001" : { + "minimal_similarity" : 0.5185185185185185, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00120_00001-00193_00001" : { + "minimal_similarity" : 0.42857142857142855, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00126_00002-00156_00002" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00126_00002-00156_00003" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00187_00001-00200_00002" : { + "minimal_similarity" : 0.5454545454545454, + "maximum_similarity" : 0.5581395348837209, + "matched_token_number" : 72 + }, + "00156_00002-00196_00001" : { + "minimal_similarity" : 0.25236593059936907, + "maximum_similarity" : 0.5882352941176471, + "matched_token_number" : 80 + }, + "00077_00001-00154_00002" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.6638655462184874, + "matched_token_number" : 79 + }, + "00127_00002-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00192_00001-00193_00001" : { + "minimal_similarity" : 0.5806451612903226, + "maximum_similarity" : 0.6766917293233082, + "matched_token_number" : 90 + }, + "00120_00001-00121_00001" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00111_00001-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5528455284552846, + "matched_token_number" : 68 + }, + "00119_00001-00141_00002" : { + "minimal_similarity" : 0.9722222222222222, + "maximum_similarity" : 0.9722222222222222, + "matched_token_number" : 105 + }, + "00031_00003-00127_00002" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00142_00001-00192_00002" : { + "minimal_similarity" : 0.4580152671755725, + "maximum_similarity" : 0.5084745762711864, + "matched_token_number" : 60 + }, + "00000_00002-00135_00001" : { + "minimal_similarity" : 0.410958904109589, + "maximum_similarity" : 0.5217391304347826, + "matched_token_number" : 60 + }, + "00142_00001-00192_00001" : { + "minimal_similarity" : 0.4129032258064516, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00142_00001-00200_00002" : { + "minimal_similarity" : 0.4263565891472868, + "maximum_similarity" : 0.4661016949152542, + "matched_token_number" : 55 + }, + "00130_00002-00192_00002" : { + "minimal_similarity" : 0.4198473282442748, + "maximum_similarity" : 0.632183908045977, + "matched_token_number" : 55 + }, + "00130_00002-00192_00001" : { + "minimal_similarity" : 0.36774193548387096, + "maximum_similarity" : 0.6551724137931034, + "matched_token_number" : 57 + }, + "00077_00001-00095_00003" : { + "minimal_similarity" : 0.37790697674418605, + "maximum_similarity" : 0.40625, + "matched_token_number" : 65 + }, + "00133_00001-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00130_00002-00155_00001" : { + "minimal_similarity" : 0.5747126436781609, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00147_00001-00199_00001" : { + "minimal_similarity" : 0.3898305084745763, + "maximum_similarity" : 0.4842105263157895, + "matched_token_number" : 46 + }, + "00077_00001-00196_00001" : { + "minimal_similarity" : 0.1640378548895899, + "maximum_similarity" : 0.325, + "matched_token_number" : 52 + }, + "00120_00001-00147_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00125_00001-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5528455284552846, + "matched_token_number" : 68 + }, + "00113_00002-00125_00001" : { + "minimal_similarity" : 0.943089430894309, + "maximum_similarity" : 0.9508196721311475, + "matched_token_number" : 116 + }, + "00000_00002-00097_00002" : { + "minimal_similarity" : 0.3826086956521739, + "maximum_similarity" : 0.41509433962264153, + "matched_token_number" : 44 + }, + "00013_00002-00044_00002" : { + "minimal_similarity" : 0.45454545454545453, + "maximum_similarity" : 0.47368421052631576, + "matched_token_number" : 45 + }, + "00126_00002-00198_00001" : { + "minimal_similarity" : 0.3881578947368421, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00044_00002-00129_00008" : { + "minimal_similarity" : 0.23829787234042554, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00154_00002-00200_00002" : { + "minimal_similarity" : 0.5116279069767442, + "maximum_similarity" : 0.5546218487394958, + "matched_token_number" : 66 + }, + "00178_00002-00195_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00121_00001-00183_00004" : { + "minimal_similarity" : 0.48936170212765956, + "maximum_similarity" : 0.5073529411764706, + "matched_token_number" : 69 + }, + "00186_00002-00199_00001" : { + "minimal_similarity" : 0.39855072463768115, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00121_00001-00153_00001" : { + "minimal_similarity" : 0.6985294117647058, + "maximum_similarity" : 0.7723577235772358, + "matched_token_number" : 95 + }, + "00092_00001-00192_00002" : { + "minimal_similarity" : 0.44274809160305345, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00092_00001-00192_00001" : { + "minimal_similarity" : 0.38064516129032255, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00160_00001-00204_00001" : { + "minimal_similarity" : 0.5441176470588235, + "maximum_similarity" : 0.6166666666666667, + "matched_token_number" : 74 + }, + "00111_00001-00125_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00193_00001-00195_00001" : { + "minimal_similarity" : 0.42857142857142855, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00178_00002-00195_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00095_00003-00160_00001" : { + "minimal_similarity" : 0.436046511627907, + "maximum_similarity" : 0.5514705882352942, + "matched_token_number" : 75 + }, + "00193_00001-00195_00002" : { + "minimal_similarity" : 0.42857142857142855, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00130_00002-00134_00001" : { + "minimal_similarity" : 0.632183908045977, + "maximum_similarity" : 0.6790123456790124, + "matched_token_number" : 55 + }, + "00000_00002-00186_00004" : { + "minimal_similarity" : 0.4260869565217391, + "maximum_similarity" : 0.46226415094339623, + "matched_token_number" : 49 + }, + "00119_00001-00192_00001" : { + "minimal_similarity" : 0.41935483870967744, + "maximum_similarity" : 0.6018518518518519, + "matched_token_number" : 65 + }, + "00119_00001-00192_00002" : { + "minimal_similarity" : 0.5190839694656488, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 68 + }, + "00031_00003-00178_00002" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00000_00002-00186_00002" : { + "minimal_similarity" : 0.4420289855072464, + "maximum_similarity" : 0.5304347826086957, + "matched_token_number" : 61 + }, + "00136_00002-00147_00001" : { + "minimal_similarity" : 0.4111111111111111, + "maximum_similarity" : 0.6271186440677966, + "matched_token_number" : 74 + }, + "00005_00002-00197_00001" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.5984848484848485, + "matched_token_number" : 79 + }, + "00156_00003-00200_00002" : { + "minimal_similarity" : 0.4117647058823529, + "maximum_similarity" : 0.43410852713178294, + "matched_token_number" : 56 + }, + "00177_00003-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00155_00001-00156_00002" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00031_00003-00131_00005" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00129_00008-00145_00001" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6097560975609756, + "matched_token_number" : 75 + }, + "00126_00002-00130_00002" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00155_00001-00156_00003" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00113_00002-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5573770491803278, + "matched_token_number" : 68 + }, + "00140_00001-00196_00001" : { + "minimal_similarity" : 0.10725552050473186, + "maximum_similarity" : 0.39080459770114945, + "matched_token_number" : 34 + }, + "00134_00001-00147_00001" : { + "minimal_similarity" : 0.3050847457627119, + "maximum_similarity" : 0.4444444444444444, + "matched_token_number" : 36 + }, + "00138_00001-00177_00003" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00186_00004-00199_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5578947368421052, + "matched_token_number" : 53 + }, + "00192_00002-00197_00001" : { + "minimal_similarity" : 0.7878787878787878, + "maximum_similarity" : 0.7938931297709924, + "matched_token_number" : 104 + }, + "00184_00002-00186_00002" : { + "minimal_similarity" : 0.4057971014492754, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 56 + }, + "00092_00001-00134_00001" : { + "minimal_similarity" : 0.3050847457627119, + "maximum_similarity" : 0.4444444444444444, + "matched_token_number" : 36 + }, + "00183_00004-00204_00001" : { + "minimal_similarity" : 0.5602836879432624, + "maximum_similarity" : 0.6583333333333333, + "matched_token_number" : 79 + }, + "00184_00002-00186_00004" : { + "minimal_similarity" : 0.5094339622641509, + "maximum_similarity" : 0.574468085106383, + "matched_token_number" : 54 + }, + "00014_00001-00199_00001" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00097_00002-00160_00001" : { + "minimal_similarity" : 0.41911764705882354, + "maximum_similarity" : 0.5377358490566038, + "matched_token_number" : 57 + }, + "00131_00005-00153_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00131_00005-00186_00004" : { + "minimal_similarity" : 0.39375, + "maximum_similarity" : 0.5943396226415094, + "matched_token_number" : 63 + }, + "00095_00003-00119_00001" : { + "minimal_similarity" : 0.313953488372093, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00119_00001-00200_00002" : { + "minimal_similarity" : 0.5193798449612403, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00000_00003-00000_00005" : { + "minimal_similarity" : 0.9333333333333333, + "maximum_similarity" : 0.9411764705882353, + "matched_token_number" : 112 + }, + "00119_00001-00155_00001" : { + "minimal_similarity" : 0.5370370370370371, + "maximum_similarity" : 0.6666666666666666, + "matched_token_number" : 58 + }, + "00131_00005-00186_00002" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.4782608695652174, + "matched_token_number" : 66 + }, + "00129_00008-00133_00001" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6097560975609756, + "matched_token_number" : 75 + }, + "00097_00002-00153_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00000_00002-00013_00002" : { + "minimal_similarity" : 0.3826086956521739, + "maximum_similarity" : 0.4631578947368421, + "matched_token_number" : 44 + }, + "00127_00002-00141_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00031_00002-00092_00001" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5217391304347826, + "matched_token_number" : 48 + }, + "00000_00005-00131_00005" : { + "minimal_similarity" : 0.3875, + "maximum_similarity" : 0.5166666666666667, + "matched_token_number" : 62 + }, + "00184_00003-00199_00001" : { + "minimal_similarity" : 0.9789473684210527, + "maximum_similarity" : 0.9893617021276596, + "matched_token_number" : 93 + }, + "00044_00002-00095_00003" : { + "minimal_similarity" : 0.3081395348837209, + "maximum_similarity" : 0.5353535353535354, + "matched_token_number" : 53 + }, + "00113_00002-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.639344262295082, + "matched_token_number" : 78 + }, + "00044_00002-00138_00001" : { + "minimal_similarity" : 0.3813559322033898, + "maximum_similarity" : 0.45454545454545453, + "matched_token_number" : 45 + }, + "00000_00001-00136_00002" : { + "minimal_similarity" : 0.2833333333333333, + "maximum_similarity" : 0.5204081632653061, + "matched_token_number" : 51 + }, + "00129_00008-00140_00001" : { + "minimal_similarity" : 0.20425531914893616, + "maximum_similarity" : 0.5517241379310345, + "matched_token_number" : 48 + }, + "00133_00001-00145_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00031_00003-00136_00002" : { + "minimal_similarity" : 0.35, + "maximum_similarity" : 0.7411764705882353, + "matched_token_number" : 63 + }, + "00141_00002-00202_00003" : { + "minimal_similarity" : 0.45390070921985815, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 64 + }, + "00005_00002-00155_00001" : { + "minimal_similarity" : 0.3125, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00192_00002-00202_00002" : { + "minimal_similarity" : 0.7446808510638298, + "maximum_similarity" : 0.8015267175572519, + "matched_token_number" : 105 + }, + "00141_00002-00202_00002" : { + "minimal_similarity" : 0.475177304964539, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00031_00002-00156_00003" : { + "minimal_similarity" : 0.33088235294117646, + "maximum_similarity" : 0.4891304347826087, + "matched_token_number" : 45 + }, + "00014_00001-00194_00001" : { + "minimal_similarity" : 0.9722222222222222, + "maximum_similarity" : 0.9722222222222222, + "matched_token_number" : 105 + }, + "00031_00002-00156_00002" : { + "minimal_similarity" : 0.33088235294117646, + "maximum_similarity" : 0.4891304347826087, + "matched_token_number" : 45 + }, + "00138_00001-00184_00003" : { + "minimal_similarity" : 0.3983050847457627, + "maximum_similarity" : 0.5, + "matched_token_number" : 47 + }, + "00192_00002-00202_00003" : { + "minimal_similarity" : 0.7730496453900709, + "maximum_similarity" : 0.8320610687022901, + "matched_token_number" : 109 + }, + "00044_00002-00204_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6060606060606061, + "matched_token_number" : 60 + }, + "00111_00001-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00000_00001-00202_00002" : { + "minimal_similarity" : 0.3971631205673759, + "maximum_similarity" : 0.5714285714285714, + "matched_token_number" : 56 + }, + "00138_00001-00184_00002" : { + "minimal_similarity" : 0.3983050847457627, + "maximum_similarity" : 0.5, + "matched_token_number" : 47 + }, + "00111_00001-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00000_00001-00202_00003" : { + "minimal_similarity" : 0.36879432624113473, + "maximum_similarity" : 0.5306122448979592, + "matched_token_number" : 52 + }, + "00183_00004-00187_00001" : { + "minimal_similarity" : 0.5886524822695035, + "maximum_similarity" : 0.6287878787878788, + "matched_token_number" : 83 + }, + "00000_00002-00130_00002" : { + "minimal_similarity" : 0.45217391304347826, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00126_00002-00186_00004" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00031_00003-00077_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00153_00001-00199_00001" : { + "minimal_similarity" : 0.5121951219512195, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00126_00002-00186_00002" : { + "minimal_similarity" : 0.3695652173913043, + "maximum_similarity" : 0.4322033898305085, + "matched_token_number" : 51 + }, + "00160_00001-00199_00001" : { + "minimal_similarity" : 0.5073529411764706, + "maximum_similarity" : 0.7263157894736842, + "matched_token_number" : 69 + }, + "00014_00001-00134_00001" : { + "minimal_similarity" : 0.4722222222222222, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 51 + }, + "00133_00001-00199_00001" : { + "minimal_similarity" : 0.5121951219512195, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00000_00003-00005_00002" : { + "minimal_similarity" : 0.40625, + "maximum_similarity" : 0.5462184873949579, + "matched_token_number" : 65 + }, + "00127_00002-00153_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00113_00002-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5655737704918032, + "matched_token_number" : 69 + }, + "00133_00001-00204_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00113_00002-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5655737704918032, + "matched_token_number" : 69 + }, + "00044_00002-00145_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00142_00001-00183_00004" : { + "minimal_similarity" : 0.3404255319148936, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00125_00001-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00129_00008-00138_00001" : { + "minimal_similarity" : 0.30638297872340425, + "maximum_similarity" : 0.6101694915254238, + "matched_token_number" : 72 + }, + "00125_00001-00153_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00178_00002-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00000_00001-00131_00005" : { + "minimal_similarity" : 0.3875, + "maximum_similarity" : 0.6326530612244898, + "matched_token_number" : 62 + }, + "00138_00001-00198_00001" : { + "minimal_similarity" : 0.5131578947368421, + "maximum_similarity" : 0.6610169491525424, + "matched_token_number" : 78 + }, + "00000_00005-00136_00002" : { + "minimal_similarity" : 0.3277777777777778, + "maximum_similarity" : 0.49166666666666664, + "matched_token_number" : 59 + }, + "00178_00002-00186_00004" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00014_00001-00127_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00192_00001-00201_00001" : { + "minimal_similarity" : 0.2645161290322581, + "maximum_similarity" : 0.47126436781609193, + "matched_token_number" : 41 + }, + "00000_00002-00177_00003" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00125_00001-00141_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00092_00001-00120_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00111_00001-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00154_00002-00195_00001" : { + "minimal_similarity" : 0.5294117647058824, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00136_00002-00156_00003" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5294117647058824, + "matched_token_number" : 72 + }, + "00131_00005-00203_00002" : { + "minimal_similarity" : 0.48125, + "maximum_similarity" : 0.5620437956204379, + "matched_token_number" : 77 + }, + "00197_00001-00200_00002" : { + "minimal_similarity" : 0.5454545454545454, + "maximum_similarity" : 0.5581395348837209, + "matched_token_number" : 72 + }, + "00154_00002-00195_00002" : { + "minimal_similarity" : 0.5294117647058824, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00198_00001-00202_00002" : { + "minimal_similarity" : 0.5855263157894737, + "maximum_similarity" : 0.6312056737588653, + "matched_token_number" : 89 + }, + "00198_00001-00202_00003" : { + "minimal_similarity" : 0.6052631578947368, + "maximum_similarity" : 0.6524822695035462, + "matched_token_number" : 92 + }, + "00031_00003-00202_00002" : { + "minimal_similarity" : 0.36879432624113473, + "maximum_similarity" : 0.611764705882353, + "matched_token_number" : 52 + }, + "00031_00003-00202_00003" : { + "minimal_similarity" : 0.36879432624113473, + "maximum_similarity" : 0.611764705882353, + "matched_token_number" : 52 + }, + "00000_00005-00178_00002" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00031_00003-00187_00001" : { + "minimal_similarity" : 0.4166666666666667, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 55 + }, + "00186_00002-00194_00001" : { + "minimal_similarity" : 0.39855072463768115, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00005_00002-00111_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00000_00001-00178_00002" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00126_00002-00135_00001" : { + "minimal_similarity" : 0.4178082191780822, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00131_00005-00137_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00186_00002-00202_00003" : { + "minimal_similarity" : 0.6453900709219859, + "maximum_similarity" : 0.6594202898550725, + "matched_token_number" : 91 + }, + "00186_00002-00202_00002" : { + "minimal_similarity" : 0.6312056737588653, + "maximum_similarity" : 0.644927536231884, + "matched_token_number" : 89 + }, + "00138_00001-00193_00001" : { + "minimal_similarity" : 0.45864661654135336, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00119_00001-00197_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6111111111111112, + "matched_token_number" : 66 + }, + "00113_00002-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5983606557377049, + "matched_token_number" : 73 + }, + "00092_00001-00125_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00129_00008-00187_00001" : { + "minimal_similarity" : 0.37446808510638296, + "maximum_similarity" : 0.6666666666666666, + "matched_token_number" : 88 + }, + "00131_00005-00135_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.5, + "matched_token_number" : 73 + }, + "00131_00005-00195_00002" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00000_00001-00077_00001" : { + "minimal_similarity" : 0.3875, + "maximum_similarity" : 0.6326530612244898, + "matched_token_number" : 62 + }, + "00000_00005-00077_00001" : { + "minimal_similarity" : 0.3875, + "maximum_similarity" : 0.5166666666666667, + "matched_token_number" : 62 + }, + "00127_00002-00195_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00131_00005-00195_00001" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00044_00002-00154_00002" : { + "minimal_similarity" : 0.48739495798319327, + "maximum_similarity" : 0.5858585858585859, + "matched_token_number" : 58 + }, + "00127_00002-00195_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00031_00002-00097_00002" : { + "minimal_similarity" : 0.5471698113207547, + "maximum_similarity" : 0.6304347826086957, + "matched_token_number" : 58 + }, + "00120_00001-00156_00002" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00111_00001-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00120_00001-00156_00003" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00129_00008-00184_00002" : { + "minimal_similarity" : 0.23829787234042554, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 56 + }, + "00129_00008-00184_00003" : { + "minimal_similarity" : 0.23829787234042554, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 56 + }, + "00000_00005-00127_00002" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00199_00001-00204_00001" : { + "minimal_similarity" : 0.5333333333333333, + "maximum_similarity" : 0.6736842105263158, + "matched_token_number" : 64 + }, + "00138_00001-00201_00001" : { + "minimal_similarity" : 0.2966101694915254, + "maximum_similarity" : 0.40229885057471265, + "matched_token_number" : 35 + }, + "00138_00001-00142_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00125_00001-00195_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00125_00001-00195_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00111_00001-00141_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00141_00002-00199_00001" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00145_00001-00195_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00097_00002-00203_00002" : { + "minimal_similarity" : 0.43795620437956206, + "maximum_similarity" : 0.5660377358490566, + "matched_token_number" : 60 + }, + "00145_00001-00195_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00192_00001-00198_00001" : { + "minimal_similarity" : 0.6258064516129033, + "maximum_similarity" : 0.6381578947368421, + "matched_token_number" : 97 + }, + "00126_00002-00142_00001" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00113_00002-00137_00002" : { + "minimal_similarity" : 0.943089430894309, + "maximum_similarity" : 0.9508196721311475, + "matched_token_number" : 116 + }, + "00153_00001-00155_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00145_00001-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6422764227642277, + "matched_token_number" : 79 + }, + "00127_00002-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00126_00002-00193_00001" : { + "minimal_similarity" : 0.42857142857142855, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00031_00003-00194_00001" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 55 + }, + "00111_00001-00137_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00156_00002-00201_00001" : { + "minimal_similarity" : 0.375, + "maximum_similarity" : 0.5862068965517241, + "matched_token_number" : 51 + }, + "00129_00008-00136_00002" : { + "minimal_similarity" : 0.2851063829787234, + "maximum_similarity" : 0.37222222222222223, + "matched_token_number" : 67 + }, + "00097_00002-00130_00002" : { + "minimal_similarity" : 0.42452830188679247, + "maximum_similarity" : 0.5172413793103449, + "matched_token_number" : 45 + }, + "00126_00002-00184_00002" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00077_00001-00187_00001" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.5984848484848485, + "matched_token_number" : 79 + }, + "00126_00002-00184_00003" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00092_00001-00137_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00135_00001-00200_00002" : { + "minimal_similarity" : 0.4863013698630137, + "maximum_similarity" : 0.5503875968992248, + "matched_token_number" : 71 + }, + "00177_00003-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00140_00001-00147_00001" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00097_00002-00183_00004" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.5377358490566038, + "matched_token_number" : 57 + }, + "00031_00003-00140_00001" : { + "minimal_similarity" : 0.5747126436781609, + "maximum_similarity" : 0.5882352941176471, + "matched_token_number" : 50 + }, + "00154_00002-00197_00001" : { + "minimal_similarity" : 0.5833333333333334, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 77 + }, + "00141_00002-00187_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6111111111111112, + "matched_token_number" : 66 + }, + "00013_00002-00201_00001" : { + "minimal_similarity" : 0.42105263157894735, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00095_00003-00183_00004" : { + "minimal_similarity" : 0.37790697674418605, + "maximum_similarity" : 0.46099290780141844, + "matched_token_number" : 65 + }, + "00000_00002-00121_00001" : { + "minimal_similarity" : 0.36764705882352944, + "maximum_similarity" : 0.43478260869565216, + "matched_token_number" : 50 + }, + "00031_00002-00153_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00177_00003-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00000_00005-00187_00001" : { + "minimal_similarity" : 0.44696969696969696, + "maximum_similarity" : 0.49166666666666664, + "matched_token_number" : 59 + }, + "00044_00002-00201_00001" : { + "minimal_similarity" : 0.24242424242424243, + "maximum_similarity" : 0.27586206896551724, + "matched_token_number" : 24 + }, + "00111_00001-00195_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00111_00001-00195_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00183_00004-00184_00003" : { + "minimal_similarity" : 0.375886524822695, + "maximum_similarity" : 0.5638297872340425, + "matched_token_number" : 53 + }, + "00183_00004-00184_00002" : { + "minimal_similarity" : 0.375886524822695, + "maximum_similarity" : 0.5638297872340425, + "matched_token_number" : 53 + }, + "00126_00002-00201_00001" : { + "minimal_similarity" : 0.3389830508474576, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00131_00005-00183_00004" : { + "minimal_similarity" : 0.44375, + "maximum_similarity" : 0.5035460992907801, + "matched_token_number" : 71 + }, + "00119_00001-00153_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00120_00001-00138_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00125_00001-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00125_00001-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00121_00001-00186_00002" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5073529411764706, + "matched_token_number" : 69 + }, + "00140_00001-00142_00001" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00095_00003-00137_00002" : { + "minimal_similarity" : 0.42441860465116277, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00184_00002-00184_00003" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 94 + }, + "00145_00001-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00000_00002-00153_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00119_00001-00202_00003" : { + "minimal_similarity" : 0.45390070921985815, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 64 + }, + "00121_00001-00186_00004" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00000_00001-00113_00002" : { + "minimal_similarity" : 0.4426229508196721, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00134_00001-00196_00001" : { + "minimal_similarity" : 0.11356466876971609, + "maximum_similarity" : 0.4444444444444444, + "matched_token_number" : 36 + }, + "00119_00001-00202_00002" : { + "minimal_similarity" : 0.475177304964539, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00140_00001-00193_00001" : { + "minimal_similarity" : 0.41353383458646614, + "maximum_similarity" : 0.632183908045977, + "matched_token_number" : 55 + }, + "00111_00001-00134_00001" : { + "minimal_similarity" : 0.4715447154471545, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00095_00003-00130_00002" : { + "minimal_similarity" : 0.25, + "maximum_similarity" : 0.4942528735632184, + "matched_token_number" : 43 + }, + "00138_00001-00186_00002" : { + "minimal_similarity" : 0.3695652173913043, + "maximum_similarity" : 0.4322033898305085, + "matched_token_number" : 51 + }, + "00130_00002-00200_00002" : { + "minimal_similarity" : 0.43410852713178294, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00138_00001-00186_00004" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00135_00001-00141_00002" : { + "minimal_similarity" : 0.4589041095890411, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00092_00001-00183_00004" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.4576271186440678, + "matched_token_number" : 54 + }, + "00097_00002-00137_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00000_00003-00145_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00136_00002-00156_00002" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5294117647058824, + "matched_token_number" : 72 + }, + "00126_00002-00203_00002" : { + "minimal_similarity" : 0.45255474452554745, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00133_00001-00194_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00137_00002-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5528455284552846, + "matched_token_number" : 68 + }, + "00000_00001-00145_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00195_00002-00200_00002" : { + "minimal_similarity" : 0.4263565891472868, + "maximum_similarity" : 0.4661016949152542, + "matched_token_number" : 55 + }, + "00031_00002-00137_00002" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00138_00001-00160_00001" : { + "minimal_similarity" : 0.45588235294117646, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00013_00002-00178_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00195_00002-00203_00002" : { + "minimal_similarity" : 0.45255474452554745, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00137_00002-00186_00004" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00137_00002-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00095_00003-00097_00002" : { + "minimal_similarity" : 0.36627906976744184, + "maximum_similarity" : 0.5943396226415094, + "matched_token_number" : 63 + }, + "00014_00001-00155_00001" : { + "minimal_similarity" : 0.5370370370370371, + "maximum_similarity" : 0.6666666666666666, + "matched_token_number" : 58 + }, + "00095_00003-00135_00001" : { + "minimal_similarity" : 0.5290697674418605, + "maximum_similarity" : 0.6232876712328768, + "matched_token_number" : 91 + }, + "00014_00001-00178_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00184_00003-00197_00001" : { + "minimal_similarity" : 0.5227272727272727, + "maximum_similarity" : 0.7340425531914894, + "matched_token_number" : 69 + }, + "00000_00005-00014_00001" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00126_00002-00160_00001" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00134_00001-00177_00003" : { + "minimal_similarity" : 0.4715447154471545, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00000_00003-00014_00001" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5462962962962963, + "matched_token_number" : 59 + }, + "00156_00002-00178_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00131_00005-00198_00001" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.5197368421052632, + "matched_token_number" : 79 + }, + "00127_00002-00160_00001" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6747967479674797, + "matched_token_number" : 83 + }, + "00140_00001-00198_00001" : { + "minimal_similarity" : 0.3026315789473684, + "maximum_similarity" : 0.5287356321839081, + "matched_token_number" : 46 + }, + "00113_00002-00153_00001" : { + "minimal_similarity" : 0.943089430894309, + "maximum_similarity" : 0.9508196721311475, + "matched_token_number" : 116 + }, + "00044_00002-00142_00001" : { + "minimal_similarity" : 0.3813559322033898, + "maximum_similarity" : 0.45454545454545453, + "matched_token_number" : 45 + }, + "00133_00001-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.43902439024390244, + "matched_token_number" : 54 + }, + "00097_00002-00135_00001" : { + "minimal_similarity" : 0.4041095890410959, + "maximum_similarity" : 0.5566037735849056, + "matched_token_number" : 59 + }, + "00136_00002-00154_00002" : { + "minimal_similarity" : 0.38333333333333336, + "maximum_similarity" : 0.5798319327731093, + "matched_token_number" : 69 + }, + "00031_00003-00155_00001" : { + "minimal_similarity" : 0.5287356321839081, + "maximum_similarity" : 0.5411764705882353, + "matched_token_number" : 46 + }, + "00140_00001-00204_00001" : { + "minimal_similarity" : 0.4583333333333333, + "maximum_similarity" : 0.632183908045977, + "matched_token_number" : 55 + }, + "00127_00002-00134_00001" : { + "minimal_similarity" : 0.4715447154471545, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00127_00002-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00125_00001-00155_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00005_00002-00202_00003" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 84 + }, + "00005_00002-00202_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 84 + }, + "00126_00002-00147_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00135_00001-00160_00001" : { + "minimal_similarity" : 0.541095890410959, + "maximum_similarity" : 0.5808823529411765, + "matched_token_number" : 79 + }, + "00014_00001-00125_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00133_00001-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00133_00001-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00140_00001-00145_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00097_00002-00111_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00154_00002-00192_00002" : { + "minimal_similarity" : 0.48854961832061067, + "maximum_similarity" : 0.5378151260504201, + "matched_token_number" : 64 + }, + "00097_00002-00186_00004" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5, + "matched_token_number" : 53 + }, + "00154_00002-00192_00001" : { + "minimal_similarity" : 0.41935483870967744, + "maximum_similarity" : 0.5462184873949579, + "matched_token_number" : 65 + }, + "00137_00002-00156_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00137_00002-00156_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00097_00002-00186_00002" : { + "minimal_similarity" : 0.2826086956521739, + "maximum_similarity" : 0.36792452830188677, + "matched_token_number" : 39 + }, + "00000_00003-00204_00001" : { + "minimal_similarity" : 0.43333333333333335, + "maximum_similarity" : 0.4369747899159664, + "matched_token_number" : 52 + }, + "00113_00002-00155_00001" : { + "minimal_similarity" : 0.5491803278688525, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00000_00001-00204_00001" : { + "minimal_similarity" : 0.45, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00155_00001-00184_00003" : { + "minimal_similarity" : 0.5212765957446809, + "maximum_similarity" : 0.5632183908045977, + "matched_token_number" : 49 + }, + "00095_00003-00156_00003" : { + "minimal_similarity" : 0.3372093023255814, + "maximum_similarity" : 0.4264705882352941, + "matched_token_number" : 58 + }, + "00155_00001-00184_00002" : { + "minimal_similarity" : 0.5212765957446809, + "maximum_similarity" : 0.5632183908045977, + "matched_token_number" : 49 + }, + "00095_00003-00156_00002" : { + "minimal_similarity" : 0.3372093023255814, + "maximum_similarity" : 0.4264705882352941, + "matched_token_number" : 58 + }, + "00121_00001-00135_00001" : { + "minimal_similarity" : 0.541095890410959, + "maximum_similarity" : 0.5808823529411765, + "matched_token_number" : 79 + }, + "00130_00002-00199_00001" : { + "minimal_similarity" : 0.45263157894736844, + "maximum_similarity" : 0.4942528735632184, + "matched_token_number" : 43 + }, + "00134_00001-00145_00001" : { + "minimal_similarity" : 0.4715447154471545, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00005_00002-00200_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6511627906976745, + "matched_token_number" : 84 + }, + "00156_00002-00199_00001" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.5473684210526316, + "matched_token_number" : 52 + }, + "00134_00001-00198_00001" : { + "minimal_similarity" : 0.3092105263157895, + "maximum_similarity" : 0.5802469135802469, + "matched_token_number" : 47 + }, + "00135_00001-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.4726027397260274, + "matched_token_number" : 69 + }, + "00134_00001-00203_00002" : { + "minimal_similarity" : 0.3795620437956204, + "maximum_similarity" : 0.6419753086419753, + "matched_token_number" : 52 + }, + "00135_00001-00192_00002" : { + "minimal_similarity" : 0.4041095890410959, + "maximum_similarity" : 0.45038167938931295, + "matched_token_number" : 59 + }, + "00153_00001-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00140_00001-00177_00003" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00031_00002-00130_00002" : { + "minimal_similarity" : 0.5543478260869565, + "maximum_similarity" : 0.5862068965517241, + "matched_token_number" : 51 + }, + "00013_00002-00204_00001" : { + "minimal_similarity" : 0.45, + "maximum_similarity" : 0.5684210526315789, + "matched_token_number" : 54 + }, + "00000_00001-00000_00002" : { + "minimal_similarity" : 0.782608695652174, + "maximum_similarity" : 0.9183673469387755, + "matched_token_number" : 90 + }, + "00000_00001-00000_00003" : { + "minimal_similarity" : 0.7142857142857143, + "maximum_similarity" : 0.8673469387755102, + "matched_token_number" : 85 + }, + "00031_00002-00183_00004" : { + "minimal_similarity" : 0.3546099290780142, + "maximum_similarity" : 0.5434782608695652, + "matched_token_number" : 50 + }, + "00000_00001-00000_00005" : { + "minimal_similarity" : 0.6833333333333333, + "maximum_similarity" : 0.8367346938775511, + "matched_token_number" : 82 + }, + "00184_00003-00204_00001" : { + "minimal_similarity" : 0.5416666666666666, + "maximum_similarity" : 0.6914893617021277, + "matched_token_number" : 65 + }, + "00145_00001-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5528455284552846, + "matched_token_number" : 68 + }, + "00000_00003-00129_00008" : { + "minimal_similarity" : 0.2680851063829787, + "maximum_similarity" : 0.5294117647058824, + "matched_token_number" : 63 + }, + "00135_00001-00198_00001" : { + "minimal_similarity" : 0.46710526315789475, + "maximum_similarity" : 0.4863013698630137, + "matched_token_number" : 71 + }, + "00044_00002-00140_00001" : { + "minimal_similarity" : 0.46464646464646464, + "maximum_similarity" : 0.5287356321839081, + "matched_token_number" : 46 + }, + "00000_00002-00156_00003" : { + "minimal_similarity" : 0.3235294117647059, + "maximum_similarity" : 0.3826086956521739, + "matched_token_number" : 44 + }, + "00044_00002-00178_00002" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00000_00002-00156_00002" : { + "minimal_similarity" : 0.3235294117647059, + "maximum_similarity" : 0.3826086956521739, + "matched_token_number" : 44 + }, + "00014_00001-00120_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00120_00001-00135_00001" : { + "minimal_similarity" : 0.4178082191780822, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00005_00002-00195_00002" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00005_00002-00195_00001" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00155_00001-00186_00004" : { + "minimal_similarity" : 0.44339622641509435, + "maximum_similarity" : 0.5402298850574713, + "matched_token_number" : 47 + }, + "00013_00002-00194_00001" : { + "minimal_similarity" : 0.5185185185185185, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00155_00001-00186_00002" : { + "minimal_similarity" : 0.35507246376811596, + "maximum_similarity" : 0.5632183908045977, + "matched_token_number" : 49 + }, + "00156_00002-00204_00001" : { + "minimal_similarity" : 0.4852941176470588, + "maximum_similarity" : 0.55, + "matched_token_number" : 66 + }, + "00044_00002-00126_00002" : { + "minimal_similarity" : 0.3813559322033898, + "maximum_similarity" : 0.45454545454545453, + "matched_token_number" : 45 + }, + "00000_00003-00202_00002" : { + "minimal_similarity" : 0.3900709219858156, + "maximum_similarity" : 0.46218487394957986, + "matched_token_number" : 55 + }, + "00177_00003-00195_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00000_00003-00202_00003" : { + "minimal_similarity" : 0.3617021276595745, + "maximum_similarity" : 0.42857142857142855, + "matched_token_number" : 51 + }, + "00177_00003-00195_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00131_00005-00160_00001" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.4852941176470588, + "matched_token_number" : 66 + }, + "00097_00002-00119_00001" : { + "minimal_similarity" : 0.5833333333333334, + "maximum_similarity" : 0.5943396226415094, + "matched_token_number" : 63 + }, + "00156_00003-00186_00004" : { + "minimal_similarity" : 0.4411764705882353, + "maximum_similarity" : 0.5660377358490566, + "matched_token_number" : 60 + }, + "00077_00001-00184_00002" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.7021276595744681, + "matched_token_number" : 66 + }, + "00095_00003-00186_00004" : { + "minimal_similarity" : 0.3081395348837209, + "maximum_similarity" : 0.5, + "matched_token_number" : 53 + }, + "00156_00003-00186_00002" : { + "minimal_similarity" : 0.37681159420289856, + "maximum_similarity" : 0.38235294117647056, + "matched_token_number" : 52 + }, + "00077_00001-00184_00003" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.7021276595744681, + "matched_token_number" : 66 + }, + "00095_00003-00186_00002" : { + "minimal_similarity" : 0.3081395348837209, + "maximum_similarity" : 0.38405797101449274, + "matched_token_number" : 53 + }, + "00130_00002-00194_00001" : { + "minimal_similarity" : 0.46296296296296297, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00136_00002-00138_00001" : { + "minimal_similarity" : 0.4111111111111111, + "maximum_similarity" : 0.6271186440677966, + "matched_token_number" : 74 + }, + "00013_00002-00193_00001" : { + "minimal_similarity" : 0.5037593984962406, + "maximum_similarity" : 0.7052631578947368, + "matched_token_number" : 67 + }, + "00130_00002-00141_00002" : { + "minimal_similarity" : 0.46296296296296297, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00136_00002-00184_00003" : { + "minimal_similarity" : 0.3111111111111111, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 56 + }, + "00136_00002-00184_00002" : { + "minimal_similarity" : 0.3111111111111111, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 56 + }, + "00142_00001-00202_00003" : { + "minimal_similarity" : 0.41843971631205673, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00140_00001-00201_00001" : { + "minimal_similarity" : 0.41379310344827586, + "maximum_similarity" : 0.41379310344827586, + "matched_token_number" : 36 + }, + "00142_00001-00202_00002" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00013_00002-00140_00001" : { + "minimal_similarity" : 0.47368421052631576, + "maximum_similarity" : 0.5172413793103449, + "matched_token_number" : 45 + }, + "00119_00001-00127_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00005_00002-00031_00003" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00000_00001-00005_00002" : { + "minimal_similarity" : 0.3875, + "maximum_similarity" : 0.6326530612244898, + "matched_token_number" : 62 + }, + "00005_00002-00031_00002" : { + "minimal_similarity" : 0.35, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00135_00001-00193_00001" : { + "minimal_similarity" : 0.4520547945205479, + "maximum_similarity" : 0.49624060150375937, + "matched_token_number" : 66 + }, + "00184_00003-00194_00001" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00177_00003-00194_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00031_00002-00135_00001" : { + "minimal_similarity" : 0.4520547945205479, + "maximum_similarity" : 0.717391304347826, + "matched_token_number" : 66 + }, + "00095_00003-00153_00001" : { + "minimal_similarity" : 0.42441860465116277, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00077_00001-00138_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.6186440677966102, + "matched_token_number" : 73 + }, + "00120_00001-00130_00002" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00133_00001-00140_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00077_00001-00131_00005" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 160 + }, + "00092_00001-00155_00001" : { + "minimal_similarity" : 0.3220338983050847, + "maximum_similarity" : 0.4367816091954023, + "matched_token_number" : 38 + }, + "00013_00002-00199_00001" : { + "minimal_similarity" : 0.4842105263157895, + "maximum_similarity" : 0.4842105263157895, + "matched_token_number" : 46 + }, + "00121_00001-00134_00001" : { + "minimal_similarity" : 0.3602941176470588, + "maximum_similarity" : 0.6049382716049383, + "matched_token_number" : 49 + }, + "00044_00002-00121_00001" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.6464646464646465, + "matched_token_number" : 64 + }, + "00177_00003-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00129_00008-00154_00002" : { + "minimal_similarity" : 0.3276595744680851, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 77 + }, + "00013_00002-00147_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00000_00002-00137_00002" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00136_00002-00186_00004" : { + "minimal_similarity" : 0.4111111111111111, + "maximum_similarity" : 0.6981132075471698, + "matched_token_number" : 74 + }, + "00044_00002-00177_00003" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00142_00001-00195_00001" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00136_00002-00186_00002" : { + "minimal_similarity" : 0.4777777777777778, + "maximum_similarity" : 0.6231884057971014, + "matched_token_number" : 86 + }, + "00142_00001-00195_00002" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00120_00001-00184_00002" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00013_00002-00145_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00120_00001-00184_00003" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00160_00001-00184_00003" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.723404255319149, + "matched_token_number" : 68 + }, + "00160_00001-00184_00002" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.723404255319149, + "matched_token_number" : 68 + }, + "00137_00002-00153_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00013_00002-00198_00001" : { + "minimal_similarity" : 0.3684210526315789, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00186_00004-00187_00001" : { + "minimal_similarity" : 0.5075757575757576, + "maximum_similarity" : 0.6320754716981132, + "matched_token_number" : 67 + }, + "00044_00002-00127_00002" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00000_00003-00178_00002" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00005_00002-00141_00002" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00111_00001-00113_00002" : { + "minimal_similarity" : 0.943089430894309, + "maximum_similarity" : 0.9508196721311475, + "matched_token_number" : 116 + }, + "00000_00002-00138_00001" : { + "minimal_similarity" : 0.4322033898305085, + "maximum_similarity" : 0.4434782608695652, + "matched_token_number" : 51 + }, + "00160_00001-00187_00001" : { + "minimal_similarity" : 0.625, + "maximum_similarity" : 0.6439393939393939, + "matched_token_number" : 85 + }, + "00200_00002-00203_00002" : { + "minimal_similarity" : 0.5109489051094891, + "maximum_similarity" : 0.5426356589147286, + "matched_token_number" : 70 + }, + "00092_00001-00153_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00142_00001-00203_00002" : { + "minimal_similarity" : 0.45255474452554745, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00077_00001-00133_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00130_00002-00195_00002" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00130_00002-00195_00001" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00031_00002-00184_00002" : { + "minimal_similarity" : 0.48936170212765956, + "maximum_similarity" : 0.5, + "matched_token_number" : 46 + }, + "00077_00001-00136_00002" : { + "minimal_similarity" : 0.4722222222222222, + "maximum_similarity" : 0.53125, + "matched_token_number" : 85 + }, + "00031_00002-00184_00003" : { + "minimal_similarity" : 0.48936170212765956, + "maximum_similarity" : 0.5, + "matched_token_number" : 46 + }, + "00147_00001-00187_00001" : { + "minimal_similarity" : 0.48484848484848486, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00184_00003-00200_00002" : { + "minimal_similarity" : 0.4186046511627907, + "maximum_similarity" : 0.574468085106383, + "matched_token_number" : 54 + }, + "00000_00003-00192_00002" : { + "minimal_similarity" : 0.44274809160305345, + "maximum_similarity" : 0.48739495798319327, + "matched_token_number" : 58 + }, + "00140_00001-00178_00002" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00000_00003-00192_00001" : { + "minimal_similarity" : 0.36129032258064514, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00000_00005-00155_00001" : { + "minimal_similarity" : 0.36666666666666664, + "maximum_similarity" : 0.5057471264367817, + "matched_token_number" : 44 + }, + "00013_00002-00142_00001" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5052631578947369, + "matched_token_number" : 48 + }, + "00135_00001-00197_00001" : { + "minimal_similarity" : 0.4931506849315068, + "maximum_similarity" : 0.5454545454545454, + "matched_token_number" : 72 + }, + "00134_00001-00193_00001" : { + "minimal_similarity" : 0.3684210526315789, + "maximum_similarity" : 0.6049382716049383, + "matched_token_number" : 49 + }, + "00120_00001-00186_00004" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00000_00003-00127_00002" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00142_00001-00197_00001" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00000_00003-00140_00001" : { + "minimal_similarity" : 0.4369747899159664, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00120_00001-00186_00002" : { + "minimal_similarity" : 0.3695652173913043, + "maximum_similarity" : 0.4322033898305085, + "matched_token_number" : 51 + }, + "00134_00001-00140_00001" : { + "minimal_similarity" : 0.632183908045977, + "maximum_similarity" : 0.6790123456790124, + "matched_token_number" : 55 + }, + "00156_00002-00194_00001" : { + "minimal_similarity" : 0.5220588235294118, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00005_00002-00127_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00077_00001-00135_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.5, + "matched_token_number" : 73 + }, + "00130_00002-00202_00002" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.6551724137931034, + "matched_token_number" : 57 + }, + "00135_00001-00203_00002" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5328467153284672, + "matched_token_number" : 73 + }, + "00136_00002-00187_00001" : { + "minimal_similarity" : 0.42777777777777776, + "maximum_similarity" : 0.5833333333333334, + "matched_token_number" : 77 + }, + "00130_00002-00197_00001" : { + "minimal_similarity" : 0.44696969696969696, + "maximum_similarity" : 0.6781609195402298, + "matched_token_number" : 59 + }, + "00013_00002-00196_00001" : { + "minimal_similarity" : 0.15772870662460567, + "maximum_similarity" : 0.5263157894736842, + "matched_token_number" : 50 + }, + "00130_00002-00202_00003" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.6551724137931034, + "matched_token_number" : 57 + }, + "00156_00002-00193_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5112781954887218, + "matched_token_number" : 68 + }, + "00113_00002-00120_00001" : { + "minimal_similarity" : 0.5737704918032787, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00184_00003-00192_00002" : { + "minimal_similarity" : 0.5343511450381679, + "maximum_similarity" : 0.7446808510638298, + "matched_token_number" : 70 + }, + "00184_00003-00192_00001" : { + "minimal_similarity" : 0.432258064516129, + "maximum_similarity" : 0.7127659574468085, + "matched_token_number" : 67 + }, + "00133_00001-00178_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00120_00001-00133_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00000_00002-00092_00001" : { + "minimal_similarity" : 0.4322033898305085, + "maximum_similarity" : 0.4434782608695652, + "matched_token_number" : 51 + }, + "00121_00001-00137_00002" : { + "minimal_similarity" : 0.6985294117647058, + "maximum_similarity" : 0.7723577235772358, + "matched_token_number" : 95 + }, + "00153_00001-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5528455284552846, + "matched_token_number" : 68 + }, + "00203_00002-00204_00001" : { + "minimal_similarity" : 0.6131386861313869, + "maximum_similarity" : 0.7, + "matched_token_number" : 84 + }, + "00121_00001-00198_00001" : { + "minimal_similarity" : 0.4473684210526316, + "maximum_similarity" : 0.5, + "matched_token_number" : 68 + }, + "00140_00001-00194_00001" : { + "minimal_similarity" : 0.46296296296296297, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00077_00001-00127_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00184_00003-00196_00001" : { + "minimal_similarity" : 0.1608832807570978, + "maximum_similarity" : 0.5425531914893617, + "matched_token_number" : 51 + }, + "00135_00001-00142_00001" : { + "minimal_similarity" : 0.4178082191780822, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00005-00141_00002" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00031_00002-00120_00001" : { + "minimal_similarity" : 0.4322033898305085, + "maximum_similarity" : 0.5543478260869565, + "matched_token_number" : 51 + }, + "00031_00003-00095_00003" : { + "minimal_similarity" : 0.27325581395348836, + "maximum_similarity" : 0.5529411764705883, + "matched_token_number" : 47 + }, + "00031_00002-00095_00003" : { + "minimal_similarity" : 0.3023255813953488, + "maximum_similarity" : 0.5652173913043478, + "matched_token_number" : 52 + }, + "00044_00002-00130_00002" : { + "minimal_similarity" : 0.46464646464646464, + "maximum_similarity" : 0.5287356321839081, + "matched_token_number" : 46 + }, + "00136_00002-00195_00002" : { + "minimal_similarity" : 0.2722222222222222, + "maximum_similarity" : 0.4152542372881356, + "matched_token_number" : 49 + }, + "00113_00002-00119_00001" : { + "minimal_similarity" : 0.5819672131147541, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00136_00002-00195_00001" : { + "minimal_similarity" : 0.2722222222222222, + "maximum_similarity" : 0.4152542372881356, + "matched_token_number" : 49 + }, + "00126_00002-00129_00008" : { + "minimal_similarity" : 0.2723404255319149, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00000_00002-00141_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00201_00001-00204_00001" : { + "minimal_similarity" : 0.2833333333333333, + "maximum_similarity" : 0.39080459770114945, + "matched_token_number" : 34 + }, + "00178_00002-00184_00003" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00178_00002-00184_00002" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00111_00001-00127_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00137_00002-00155_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00142_00001-00199_00001" : { + "minimal_similarity" : 0.4830508474576271, + "maximum_similarity" : 0.6, + "matched_token_number" : 57 + }, + "00014_00001-00129_00008" : { + "minimal_similarity" : 0.2978723404255319, + "maximum_similarity" : 0.6481481481481481, + "matched_token_number" : 70 + }, + "00095_00003-00201_00001" : { + "minimal_similarity" : 0.25, + "maximum_similarity" : 0.4942528735632184, + "matched_token_number" : 43 + }, + "00113_00002-00186_00004" : { + "minimal_similarity" : 0.45901639344262296, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00140_00001-00199_00001" : { + "minimal_similarity" : 0.45263157894736844, + "maximum_similarity" : 0.4942528735632184, + "matched_token_number" : 43 + }, + "00177_00003-00178_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00138_00001-00204_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5084745762711864, + "matched_token_number" : 60 + }, + "00000_00001-00095_00003" : { + "minimal_similarity" : 0.313953488372093, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00126_00002-00196_00001" : { + "minimal_similarity" : 0.17981072555205047, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00097_00002-00155_00001" : { + "minimal_similarity" : 0.5283018867924528, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00000_00001-00120_00001" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5306122448979592, + "matched_token_number" : 52 + }, + "00113_00002-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5409836065573771, + "matched_token_number" : 66 + }, + "00031_00002-00192_00002" : { + "minimal_similarity" : 0.4351145038167939, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00160_00001-00201_00001" : { + "minimal_similarity" : 0.3161764705882353, + "maximum_similarity" : 0.4942528735632184, + "matched_token_number" : 43 + }, + "00031_00002-00192_00001" : { + "minimal_similarity" : 0.3225806451612903, + "maximum_similarity" : 0.5434782608695652, + "matched_token_number" : 50 + }, + "00077_00001-00097_00002" : { + "minimal_similarity" : 0.3, + "maximum_similarity" : 0.4528301886792453, + "matched_token_number" : 48 + }, + "00131_00005-00184_00002" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.7021276595744681, + "matched_token_number" : 66 + }, + "00131_00005-00184_00003" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.7021276595744681, + "matched_token_number" : 66 + }, + "00192_00001-00195_00002" : { + "minimal_similarity" : 0.4129032258064516, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00192_00001-00195_00001" : { + "minimal_similarity" : 0.4129032258064516, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00142_00001-00160_00001" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00000_00005-00154_00002" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00129_00008-00130_00002" : { + "minimal_similarity" : 0.20425531914893616, + "maximum_similarity" : 0.5517241379310345, + "matched_token_number" : 48 + }, + "00131_00005-00197_00001" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.5984848484848485, + "matched_token_number" : 79 + }, + "00005_00002-00119_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00186_00004-00196_00001" : { + "minimal_similarity" : 0.11041009463722397, + "maximum_similarity" : 0.330188679245283, + "matched_token_number" : 35 + }, + "00000_00001-00154_00002" : { + "minimal_similarity" : 0.453781512605042, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00000_00003-00044_00002" : { + "minimal_similarity" : 0.46218487394957986, + "maximum_similarity" : 0.5555555555555556, + "matched_token_number" : 55 + }, + "00119_00001-00160_00001" : { + "minimal_similarity" : 0.6029411764705882, + "maximum_similarity" : 0.7592592592592593, + "matched_token_number" : 82 + }, + "00119_00001-00131_00005" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00120_00001-00153_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00092_00001-00131_00005" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.6186440677966102, + "matched_token_number" : 73 + }, + "00134_00001-00195_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.691358024691358, + "matched_token_number" : 56 + }, + "00000_00002-00044_00002" : { + "minimal_similarity" : 0.48695652173913045, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00014_00001-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00134_00001-00195_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.691358024691358, + "matched_token_number" : 56 + }, + "00077_00001-00194_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00000_00005-00095_00003" : { + "minimal_similarity" : 0.3081395348837209, + "maximum_similarity" : 0.44166666666666665, + "matched_token_number" : 53 + }, + "00194_00001-00195_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00000_00005-00200_00002" : { + "minimal_similarity" : 0.4806201550387597, + "maximum_similarity" : 0.5166666666666667, + "matched_token_number" : 62 + }, + "00194_00001-00195_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00137_00002-00193_00001" : { + "minimal_similarity" : 0.5488721804511278, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00000_00002-00200_00002" : { + "minimal_similarity" : 0.46511627906976744, + "maximum_similarity" : 0.5217391304347826, + "matched_token_number" : 60 + }, + "00077_00001-00092_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.6186440677966102, + "matched_token_number" : 73 + }, + "00000_00001-00125_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00111_00001-00160_00001" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6747967479674797, + "matched_token_number" : 83 + }, + "00014_00001-00044_00002" : { + "minimal_similarity" : 0.4537037037037037, + "maximum_similarity" : 0.494949494949495, + "matched_token_number" : 49 + }, + "00031_00002-00197_00001" : { + "minimal_similarity" : 0.4090909090909091, + "maximum_similarity" : 0.5869565217391305, + "matched_token_number" : 54 + }, + "00119_00001-00194_00001" : { + "minimal_similarity" : 0.9722222222222222, + "maximum_similarity" : 0.9722222222222222, + "matched_token_number" : 105 + }, + "00133_00001-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00177_00003-00199_00001" : { + "minimal_similarity" : 0.5121951219512195, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00000_00003-00138_00001" : { + "minimal_similarity" : 0.40336134453781514, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00187_00001-00194_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6111111111111112, + "matched_token_number" : 66 + }, + "00142_00001-00178_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00111_00001-00156_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00077_00001-00130_00002" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00111_00001-00156_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00125_00001-00130_00002" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00111_00001-00199_00001" : { + "minimal_similarity" : 0.5121951219512195, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00141_00002-00192_00001" : { + "minimal_similarity" : 0.41935483870967744, + "maximum_similarity" : 0.6018518518518519, + "matched_token_number" : 65 + }, + "00141_00002-00192_00002" : { + "minimal_similarity" : 0.5190839694656488, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 68 + }, + "00156_00002-00198_00001" : { + "minimal_similarity" : 0.48026315789473684, + "maximum_similarity" : 0.5367647058823529, + "matched_token_number" : 73 + }, + "00153_00001-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00131_00005-00155_00001" : { + "minimal_similarity" : 0.3125, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00077_00001-00199_00001" : { + "minimal_similarity" : 0.41875, + "maximum_similarity" : 0.7052631578947368, + "matched_token_number" : 67 + }, + "00184_00002-00200_00002" : { + "minimal_similarity" : 0.4186046511627907, + "maximum_similarity" : 0.574468085106383, + "matched_token_number" : 54 + }, + "00097_00002-00192_00001" : { + "minimal_similarity" : 0.41935483870967744, + "maximum_similarity" : 0.6132075471698113, + "matched_token_number" : 65 + }, + "00097_00002-00192_00002" : { + "minimal_similarity" : 0.4198473282442748, + "maximum_similarity" : 0.5188679245283019, + "matched_token_number" : 55 + }, + "00119_00001-00136_00002" : { + "minimal_similarity" : 0.35555555555555557, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 64 + }, + "00126_00002-00183_00004" : { + "minimal_similarity" : 0.3404255319148936, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00097_00002-00184_00003" : { + "minimal_similarity" : 0.46226415094339623, + "maximum_similarity" : 0.5212765957446809, + "matched_token_number" : 49 + }, + "00097_00002-00184_00002" : { + "minimal_similarity" : 0.46226415094339623, + "maximum_similarity" : 0.5212765957446809, + "matched_token_number" : 49 + }, + "00031_00003-00184_00002" : { + "minimal_similarity" : 0.4574468085106383, + "maximum_similarity" : 0.5058823529411764, + "matched_token_number" : 43 + }, + "00044_00002-00194_00001" : { + "minimal_similarity" : 0.4537037037037037, + "maximum_similarity" : 0.494949494949495, + "matched_token_number" : 49 + }, + "00031_00002-00031_00003" : { + "minimal_similarity" : 0.5760869565217391, + "maximum_similarity" : 0.6235294117647059, + "matched_token_number" : 53 + }, + "00031_00003-00184_00003" : { + "minimal_similarity" : 0.4574468085106383, + "maximum_similarity" : 0.5058823529411764, + "matched_token_number" : 43 + }, + "00013_00002-00127_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00113_00002-00156_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.5, + "matched_token_number" : 61 + }, + "00113_00002-00156_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.5, + "matched_token_number" : 61 + }, + "00125_00001-00126_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00202_00002-00202_00003" : { + "minimal_similarity" : 0.9645390070921985, + "maximum_similarity" : 0.9645390070921985, + "matched_token_number" : 136 + }, + "00197_00001-00198_00001" : { + "minimal_similarity" : 0.5986842105263158, + "maximum_similarity" : 0.6893939393939394, + "matched_token_number" : 91 + }, + "00120_00001-00196_00001" : { + "minimal_similarity" : 0.17981072555205047, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00092_00001-00136_00002" : { + "minimal_similarity" : 0.4111111111111111, + "maximum_similarity" : 0.6271186440677966, + "matched_token_number" : 74 + }, + "00095_00003-00184_00003" : { + "minimal_similarity" : 0.31976744186046513, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00156_00003-00194_00001" : { + "minimal_similarity" : 0.5220588235294118, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00121_00001-00130_00002" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.7241379310344828, + "matched_token_number" : 63 + }, + "00095_00003-00184_00002" : { + "minimal_similarity" : 0.31976744186046513, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00111_00001-00119_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00154_00002-00193_00001" : { + "minimal_similarity" : 0.48120300751879697, + "maximum_similarity" : 0.5378151260504201, + "matched_token_number" : 64 + }, + "00000_00003-00196_00001" : { + "minimal_similarity" : 0.17350157728706625, + "maximum_similarity" : 0.46218487394957986, + "matched_token_number" : 55 + }, + "00155_00001-00183_00004" : { + "minimal_similarity" : 0.2553191489361702, + "maximum_similarity" : 0.41379310344827586, + "matched_token_number" : 36 + }, + "00000_00001-00196_00001" : { + "minimal_similarity" : 0.13564668769716087, + "maximum_similarity" : 0.4387755102040816, + "matched_token_number" : 43 + }, + "00156_00002-00177_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00129_00008-00198_00001" : { + "minimal_similarity" : 0.34893617021276596, + "maximum_similarity" : 0.5394736842105263, + "matched_token_number" : 82 + }, + "00044_00002-00135_00001" : { + "minimal_similarity" : 0.3356164383561644, + "maximum_similarity" : 0.494949494949495, + "matched_token_number" : 49 + }, + "00121_00001-00126_00002" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00013_00002-00156_00002" : { + "minimal_similarity" : 0.36764705882352944, + "maximum_similarity" : 0.5263157894736842, + "matched_token_number" : 50 + }, + "00013_00002-00156_00003" : { + "minimal_similarity" : 0.36764705882352944, + "maximum_similarity" : 0.5263157894736842, + "matched_token_number" : 50 + }, + "00156_00003-00193_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5112781954887218, + "matched_token_number" : 68 + }, + "00127_00002-00156_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00127_00002-00156_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00178_00002-00201_00001" : { + "minimal_similarity" : 0.3008130081300813, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00125_00001-00127_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00000_00001-00197_00001" : { + "minimal_similarity" : 0.4090909090909091, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00136_00002-00153_00001" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5853658536585366, + "matched_token_number" : 72 + }, + "00000_00003-00197_00001" : { + "minimal_similarity" : 0.4090909090909091, + "maximum_similarity" : 0.453781512605042, + "matched_token_number" : 54 + }, + "00113_00002-00178_00002" : { + "minimal_similarity" : 0.943089430894309, + "maximum_similarity" : 0.9508196721311475, + "matched_token_number" : 116 + }, + "00192_00002-00204_00001" : { + "minimal_similarity" : 0.6717557251908397, + "maximum_similarity" : 0.7333333333333333, + "matched_token_number" : 88 + }, + "00195_00002-00202_00002" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00195_00002-00202_00003" : { + "minimal_similarity" : 0.41843971631205673, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00133_00001-00138_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00126_00002-00153_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00005_00002-00203_00002" : { + "minimal_similarity" : 0.48125, + "maximum_similarity" : 0.5620437956204379, + "matched_token_number" : 77 + }, + "00013_00002-00097_00002" : { + "minimal_similarity" : 0.5188679245283019, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00031_00003-00154_00002" : { + "minimal_similarity" : 0.4369747899159664, + "maximum_similarity" : 0.611764705882353, + "matched_token_number" : 52 + }, + "00193_00001-00197_00001" : { + "minimal_similarity" : 0.6165413533834586, + "maximum_similarity" : 0.6212121212121212, + "matched_token_number" : 82 + }, + "00125_00001-00134_00001" : { + "minimal_similarity" : 0.4715447154471545, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00121_00001-00155_00001" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.7011494252873564, + "matched_token_number" : 61 + }, + "00156_00003-00199_00001" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.5473684210526316, + "matched_token_number" : 52 + }, + "00187_00001-00198_00001" : { + "minimal_similarity" : 0.5986842105263158, + "maximum_similarity" : 0.6893939393939394, + "matched_token_number" : 91 + }, + "00013_00002-00119_00001" : { + "minimal_similarity" : 0.5185185185185185, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00000_00001-00129_00008" : { + "minimal_similarity" : 0.251063829787234, + "maximum_similarity" : 0.6020408163265306, + "matched_token_number" : 59 + }, + "00119_00001-00135_00001" : { + "minimal_similarity" : 0.4589041095890411, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00044_00002-00193_00001" : { + "minimal_similarity" : 0.5037593984962406, + "maximum_similarity" : 0.6767676767676768, + "matched_token_number" : 67 + }, + "00092_00001-00127_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00031_00003-00183_00004" : { + "minimal_similarity" : 0.36879432624113473, + "maximum_similarity" : 0.611764705882353, + "matched_token_number" : 52 + }, + "00154_00002-00194_00001" : { + "minimal_similarity" : 0.5714285714285714, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 68 + }, + "00126_00002-00187_00001" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00097_00002-00193_00001" : { + "minimal_similarity" : 0.39849624060150374, + "maximum_similarity" : 0.5, + "matched_token_number" : 53 + }, + "00129_00008-00193_00001" : { + "minimal_similarity" : 0.3446808510638298, + "maximum_similarity" : 0.6090225563909775, + "matched_token_number" : 81 + }, + "00013_00002-00126_00002" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5052631578947369, + "matched_token_number" : 48 + }, + "00044_00002-00160_00001" : { + "minimal_similarity" : 0.4264705882352941, + "maximum_similarity" : 0.5858585858585859, + "matched_token_number" : 58 + }, + "00000_00002-00184_00002" : { + "minimal_similarity" : 0.48695652173913045, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 56 + }, + "00031_00002-00196_00001" : { + "minimal_similarity" : 0.12618296529968454, + "maximum_similarity" : 0.43478260869565216, + "matched_token_number" : 40 + }, + "00000_00002-00184_00003" : { + "minimal_similarity" : 0.48695652173913045, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 56 + }, + "00127_00002-00199_00001" : { + "minimal_similarity" : 0.5121951219512195, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00000_00005-00184_00003" : { + "minimal_similarity" : 0.49166666666666664, + "maximum_similarity" : 0.6276595744680851, + "matched_token_number" : 59 + }, + "00000_00001-00184_00003" : { + "minimal_similarity" : 0.5102040816326531, + "maximum_similarity" : 0.5319148936170213, + "matched_token_number" : 50 + }, + "00005_00002-00097_00002" : { + "minimal_similarity" : 0.3, + "maximum_similarity" : 0.4528301886792453, + "matched_token_number" : 48 + }, + "00000_00005-00184_00002" : { + "minimal_similarity" : 0.49166666666666664, + "maximum_similarity" : 0.6276595744680851, + "matched_token_number" : 59 + }, + "00000_00001-00184_00002" : { + "minimal_similarity" : 0.5102040816326531, + "maximum_similarity" : 0.5319148936170213, + "matched_token_number" : 50 + }, + "00156_00003-00160_00001" : { + "minimal_similarity" : 0.5514705882352942, + "maximum_similarity" : 0.5514705882352942, + "matched_token_number" : 75 + }, + "00127_00002-00186_00004" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00145_00001-00201_00001" : { + "minimal_similarity" : 0.3008130081300813, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00156_00002-00160_00001" : { + "minimal_similarity" : 0.5514705882352942, + "maximum_similarity" : 0.5514705882352942, + "matched_token_number" : 75 + }, + "00183_00004-00193_00001" : { + "minimal_similarity" : 0.5886524822695035, + "maximum_similarity" : 0.6240601503759399, + "matched_token_number" : 83 + }, + "00125_00001-00194_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00183_00004-00199_00001" : { + "minimal_similarity" : 0.3971631205673759, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00142_00001-00177_00003" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00000_00005-00183_00004" : { + "minimal_similarity" : 0.3900709219858156, + "maximum_similarity" : 0.4583333333333333, + "matched_token_number" : 55 + }, + "00129_00008-00194_00001" : { + "minimal_similarity" : 0.2978723404255319, + "maximum_similarity" : 0.6481481481481481, + "matched_token_number" : 70 + }, + "00000_00002-00183_00004" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.46956521739130436, + "matched_token_number" : 54 + }, + "00186_00002-00204_00001" : { + "minimal_similarity" : 0.5362318840579711, + "maximum_similarity" : 0.6166666666666667, + "matched_token_number" : 74 + }, + "00135_00001-00177_00003" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6260162601626016, + "matched_token_number" : 77 + }, + "00111_00001-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00127_00002-00193_00001" : { + "minimal_similarity" : 0.5488721804511278, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00014_00001-00138_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00153_00001-00204_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00145_00001-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00000_00005-00201_00001" : { + "minimal_similarity" : 0.25833333333333336, + "maximum_similarity" : 0.3563218390804598, + "matched_token_number" : 31 + }, + "00013_00002-00113_00002" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00121_00001-00156_00003" : { + "minimal_similarity" : 0.49264705882352944, + "maximum_similarity" : 0.49264705882352944, + "matched_token_number" : 67 + }, + "00138_00001-00145_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00121_00001-00156_00002" : { + "minimal_similarity" : 0.49264705882352944, + "maximum_similarity" : 0.49264705882352944, + "matched_token_number" : 67 + }, + "00125_00001-00135_00001" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6260162601626016, + "matched_token_number" : 77 + }, + "00141_00002-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00000_00001-00183_00004" : { + "minimal_similarity" : 0.375886524822695, + "maximum_similarity" : 0.5408163265306123, + "matched_token_number" : 53 + }, + "00187_00001-00199_00001" : { + "minimal_similarity" : 0.48484848484848486, + "maximum_similarity" : 0.6736842105263158, + "matched_token_number" : 64 + }, + "00141_00002-00197_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6111111111111112, + "matched_token_number" : 66 + }, + "00193_00001-00198_00001" : { + "minimal_similarity" : 0.5328947368421053, + "maximum_similarity" : 0.6090225563909775, + "matched_token_number" : 81 + }, + "00127_00002-00194_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00014_00001-00133_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00125_00001-00193_00001" : { + "minimal_similarity" : 0.5488721804511278, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00183_00004-00198_00001" : { + "minimal_similarity" : 0.506578947368421, + "maximum_similarity" : 0.5460992907801419, + "matched_token_number" : 77 + }, + "00119_00001-00195_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00119_00001-00195_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00133_00001-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00154_00002-00160_00001" : { + "minimal_similarity" : 0.5661764705882353, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 77 + }, + "00134_00001-00160_00001" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.6419753086419753, + "matched_token_number" : 52 + }, + "00095_00003-00113_00002" : { + "minimal_similarity" : 0.4069767441860465, + "maximum_similarity" : 0.5737704918032787, + "matched_token_number" : 70 + }, + "00183_00004-00186_00004" : { + "minimal_similarity" : 0.5035460992907801, + "maximum_similarity" : 0.6698113207547169, + "matched_token_number" : 71 + }, + "00125_00001-00199_00001" : { + "minimal_similarity" : 0.5121951219512195, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00183_00004-00186_00002" : { + "minimal_similarity" : 0.5319148936170213, + "maximum_similarity" : 0.5434782608695652, + "matched_token_number" : 75 + }, + "00097_00002-00154_00002" : { + "minimal_similarity" : 0.5126050420168067, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00111_00001-00193_00001" : { + "minimal_similarity" : 0.5488721804511278, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00113_00002-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6475409836065574, + "matched_token_number" : 79 + }, + "00154_00002-00198_00001" : { + "minimal_similarity" : 0.40789473684210525, + "maximum_similarity" : 0.5210084033613446, + "matched_token_number" : 62 + }, + "00014_00001-00192_00002" : { + "minimal_similarity" : 0.5190839694656488, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 68 + }, + "00014_00001-00192_00001" : { + "minimal_similarity" : 0.41935483870967744, + "maximum_similarity" : 0.6018518518518519, + "matched_token_number" : 65 + }, + "00145_00001-00147_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00127_00002-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00178_00002-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5528455284552846, + "matched_token_number" : 68 + }, + "00014_00001-00195_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00014_00001-00077_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00186_00002-00187_00001" : { + "minimal_similarity" : 0.6304347826086957, + "maximum_similarity" : 0.6590909090909091, + "matched_token_number" : 87 + }, + "00138_00001-00203_00002" : { + "minimal_similarity" : 0.46715328467153283, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00120_00001-00154_00002" : { + "minimal_similarity" : 0.5294117647058824, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00111_00001-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00138_00001-00140_00001" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00014_00001-00195_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00111_00001-00186_00004" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00077_00001-00160_00001" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.4852941176470588, + "matched_token_number" : 66 + }, + "00192_00001-00199_00001" : { + "minimal_similarity" : 0.4258064516129032, + "maximum_similarity" : 0.6947368421052632, + "matched_token_number" : 66 + }, + "00000_00001-00031_00002" : { + "minimal_similarity" : 0.45918367346938777, + "maximum_similarity" : 0.4891304347826087, + "matched_token_number" : 45 + }, + "00000_00001-00031_00003" : { + "minimal_similarity" : 0.5612244897959183, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 55 + }, + "00126_00002-00195_00001" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00126_00002-00195_00002" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00031_00003-00141_00002" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 55 + }, + "00125_00001-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00131_00005-00192_00002" : { + "minimal_similarity" : 0.5375, + "maximum_similarity" : 0.6564885496183206, + "matched_token_number" : 86 + }, + "00077_00001-00156_00002" : { + "minimal_similarity" : 0.3625, + "maximum_similarity" : 0.4264705882352941, + "matched_token_number" : 58 + }, + "00131_00005-00192_00001" : { + "minimal_similarity" : 0.55, + "maximum_similarity" : 0.567741935483871, + "matched_token_number" : 88 + }, + "00077_00001-00156_00003" : { + "minimal_similarity" : 0.3625, + "maximum_similarity" : 0.4264705882352941, + "matched_token_number" : 58 + }, + "00129_00008-00135_00001" : { + "minimal_similarity" : 0.41702127659574467, + "maximum_similarity" : 0.6712328767123288, + "matched_token_number" : 98 + }, + "00014_00001-00137_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00119_00001-00199_00001" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00156_00003-00198_00001" : { + "minimal_similarity" : 0.48026315789473684, + "maximum_similarity" : 0.5367647058823529, + "matched_token_number" : 73 + }, + "00192_00001-00196_00001" : { + "minimal_similarity" : 0.23659305993690852, + "maximum_similarity" : 0.4838709677419355, + "matched_token_number" : 75 + }, + "00000_00002-00014_00001" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00141_00002-00155_00001" : { + "minimal_similarity" : 0.5370370370370371, + "maximum_similarity" : 0.6666666666666666, + "matched_token_number" : 58 + }, + "00092_00001-00130_00002" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00140_00001-00160_00001" : { + "minimal_similarity" : 0.4117647058823529, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00000_00001-00192_00001" : { + "minimal_similarity" : 0.38064516129032255, + "maximum_similarity" : 0.6020408163265306, + "matched_token_number" : 59 + }, + "00000_00005-00140_00001" : { + "minimal_similarity" : 0.4166666666666667, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00000_00001-00192_00002" : { + "minimal_similarity" : 0.4122137404580153, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00141_00002-00153_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00031_00003-00142_00001" : { + "minimal_similarity" : 0.3728813559322034, + "maximum_similarity" : 0.5176470588235295, + "matched_token_number" : 44 + }, + "00126_00002-00192_00001" : { + "minimal_similarity" : 0.4129032258064516, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00031_00003-00200_00002" : { + "minimal_similarity" : 0.3798449612403101, + "maximum_similarity" : 0.5764705882352941, + "matched_token_number" : 49 + }, + "00044_00002-00198_00001" : { + "minimal_similarity" : 0.4144736842105263, + "maximum_similarity" : 0.6363636363636364, + "matched_token_number" : 63 + }, + "00154_00002-00199_00001" : { + "minimal_similarity" : 0.48739495798319327, + "maximum_similarity" : 0.6105263157894737, + "matched_token_number" : 58 + }, + "00031_00002-00155_00001" : { + "minimal_similarity" : 0.5108695652173914, + "maximum_similarity" : 0.5402298850574713, + "matched_token_number" : 47 + }, + "00126_00002-00192_00002" : { + "minimal_similarity" : 0.4580152671755725, + "maximum_similarity" : 0.5084745762711864, + "matched_token_number" : 60 + }, + "00113_00002-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.5, + "matched_token_number" : 61 + }, + "00113_00002-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5409836065573771, + "matched_token_number" : 66 + }, + "00097_00002-00198_00001" : { + "minimal_similarity" : 0.375, + "maximum_similarity" : 0.5377358490566038, + "matched_token_number" : 57 + }, + "00186_00002-00200_00002" : { + "minimal_similarity" : 0.4420289855072464, + "maximum_similarity" : 0.4728682170542636, + "matched_token_number" : 61 + }, + "00013_00002-00121_00001" : { + "minimal_similarity" : 0.47794117647058826, + "maximum_similarity" : 0.6842105263157895, + "matched_token_number" : 65 + }, + "00138_00001-00200_00002" : { + "minimal_similarity" : 0.40310077519379844, + "maximum_similarity" : 0.4406779661016949, + "matched_token_number" : 52 + }, + "00141_00002-00154_00002" : { + "minimal_similarity" : 0.5714285714285714, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 68 + }, + "00031_00003-00201_00001" : { + "minimal_similarity" : 0.4367816091954023, + "maximum_similarity" : 0.4470588235294118, + "matched_token_number" : 38 + }, + "00111_00001-00194_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00005_00002-00156_00003" : { + "minimal_similarity" : 0.3625, + "maximum_similarity" : 0.4264705882352941, + "matched_token_number" : 58 + }, + "00005_00002-00156_00002" : { + "minimal_similarity" : 0.3625, + "maximum_similarity" : 0.4264705882352941, + "matched_token_number" : 58 + }, + "00031_00002-00154_00002" : { + "minimal_similarity" : 0.44537815126050423, + "maximum_similarity" : 0.5760869565217391, + "matched_token_number" : 53 + }, + "00129_00008-00134_00001" : { + "minimal_similarity" : 0.2, + "maximum_similarity" : 0.5802469135802469, + "matched_token_number" : 47 + }, + "00131_00005-00193_00001" : { + "minimal_similarity" : 0.44375, + "maximum_similarity" : 0.5338345864661654, + "matched_token_number" : 71 + }, + "00183_00004-00194_00001" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.5555555555555556, + "matched_token_number" : 60 + }, + "00097_00002-00197_00001" : { + "minimal_similarity" : 0.42424242424242425, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00014_00001-00031_00002" : { + "minimal_similarity" : 0.5185185185185185, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00014_00001-00136_00002" : { + "minimal_similarity" : 0.35555555555555557, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 64 + }, + "00014_00001-00031_00003" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 55 + }, + "00044_00002-00199_00001" : { + "minimal_similarity" : 0.45454545454545453, + "maximum_similarity" : 0.47368421052631576, + "matched_token_number" : 45 + }, + "00178_00002-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00121_00001-00125_00001" : { + "minimal_similarity" : 0.6985294117647058, + "maximum_similarity" : 0.7723577235772358, + "matched_token_number" : 95 + }, + "00125_00001-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00130_00002-00156_00003" : { + "minimal_similarity" : 0.36764705882352944, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00119_00001-00198_00001" : { + "minimal_similarity" : 0.3618421052631579, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00134_00001-00135_00001" : { + "minimal_similarity" : 0.3767123287671233, + "maximum_similarity" : 0.6790123456790124, + "matched_token_number" : 55 + }, + "00130_00002-00156_00002" : { + "minimal_similarity" : 0.36764705882352944, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00184_00002-00201_00001" : { + "minimal_similarity" : 0.3617021276595745, + "maximum_similarity" : 0.39080459770114945, + "matched_token_number" : 34 + }, + "00131_00005-00156_00002" : { + "minimal_similarity" : 0.3625, + "maximum_similarity" : 0.4264705882352941, + "matched_token_number" : 58 + }, + "00196_00001-00199_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.5684210526315789, + "matched_token_number" : 54 + }, + "00131_00005-00156_00003" : { + "minimal_similarity" : 0.3625, + "maximum_similarity" : 0.4264705882352941, + "matched_token_number" : 58 + }, + "00031_00002-00193_00001" : { + "minimal_similarity" : 0.39849624060150374, + "maximum_similarity" : 0.5760869565217391, + "matched_token_number" : 53 + }, + "00197_00001-00199_00001" : { + "minimal_similarity" : 0.48484848484848486, + "maximum_similarity" : 0.6736842105263158, + "matched_token_number" : 64 + }, + "00193_00001-00194_00001" : { + "minimal_similarity" : 0.518796992481203, + "maximum_similarity" : 0.6388888888888888, + "matched_token_number" : 69 + }, + "00113_00002-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.639344262295082, + "matched_token_number" : 78 + }, + "00000_00005-00204_00001" : { + "minimal_similarity" : 0.43333333333333335, + "maximum_similarity" : 0.43333333333333335, + "matched_token_number" : 52 + }, + "00031_00003-00113_00002" : { + "minimal_similarity" : 0.4426229508196721, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00097_00002-00156_00002" : { + "minimal_similarity" : 0.39705882352941174, + "maximum_similarity" : 0.5094339622641509, + "matched_token_number" : 54 + }, + "00097_00002-00156_00003" : { + "minimal_similarity" : 0.39705882352941174, + "maximum_similarity" : 0.5094339622641509, + "matched_token_number" : 54 + }, + "00120_00001-00160_00001" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00111_00001-00121_00001" : { + "minimal_similarity" : 0.6985294117647058, + "maximum_similarity" : 0.7723577235772358, + "matched_token_number" : 95 + }, + "00198_00001-00199_00001" : { + "minimal_similarity" : 0.4144736842105263, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00155_00001-00201_00001" : { + "minimal_similarity" : 0.3793103448275862, + "maximum_similarity" : 0.3793103448275862, + "matched_token_number" : 33 + }, + "00097_00002-00196_00001" : { + "minimal_similarity" : 0.1861198738170347, + "maximum_similarity" : 0.5566037735849056, + "matched_token_number" : 59 + }, + "00000_00001-00121_00001" : { + "minimal_similarity" : 0.3382352941176471, + "maximum_similarity" : 0.46938775510204084, + "matched_token_number" : 46 + }, + "00000_00001-00187_00001" : { + "minimal_similarity" : 0.4090909090909091, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00138_00001-00141_00002" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00000_00005-00147_00001" : { + "minimal_similarity" : 0.38333333333333336, + "maximum_similarity" : 0.3898305084745763, + "matched_token_number" : 46 + }, + "00125_00001-00131_00005" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00095_00003-00111_00001" : { + "minimal_similarity" : 0.42441860465116277, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00077_00001-00121_00001" : { + "minimal_similarity" : 0.475, + "maximum_similarity" : 0.5588235294117647, + "matched_token_number" : 76 + }, + "00000_00002-00147_00001" : { + "minimal_similarity" : 0.4322033898305085, + "maximum_similarity" : 0.4434782608695652, + "matched_token_number" : 51 + }, + "00130_00002-00183_00004" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00014_00001-00131_00005" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00121_00001-00192_00002" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5190839694656488, + "matched_token_number" : 68 + }, + "00121_00001-00192_00001" : { + "minimal_similarity" : 0.47096774193548385, + "maximum_similarity" : 0.5367647058823529, + "matched_token_number" : 73 + }, + "00187_00001-00195_00002" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00178_00002-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00186_00002-00201_00001" : { + "minimal_similarity" : 0.2463768115942029, + "maximum_similarity" : 0.39080459770114945, + "matched_token_number" : 34 + }, + "00187_00001-00195_00001" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00192_00002-00200_00002" : { + "minimal_similarity" : 0.5801526717557252, + "maximum_similarity" : 0.5891472868217055, + "matched_token_number" : 76 + }, + "00129_00008-00131_00005" : { + "minimal_similarity" : 0.3021276595744681, + "maximum_similarity" : 0.44375, + "matched_token_number" : 71 + }, + "00077_00001-00195_00001" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00077_00001-00195_00002" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00120_00001-00199_00001" : { + "minimal_similarity" : 0.4830508474576271, + "maximum_similarity" : 0.6, + "matched_token_number" : 57 + }, + "00125_00001-00136_00002" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5853658536585366, + "matched_token_number" : 72 + }, + "00014_00001-00197_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6111111111111112, + "matched_token_number" : 66 + }, + "00000_00005-00113_00002" : { + "minimal_similarity" : 0.4672131147540984, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00193_00001-00199_00001" : { + "minimal_similarity" : 0.44360902255639095, + "maximum_similarity" : 0.6210526315789474, + "matched_token_number" : 59 + }, + "00031_00003-00145_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00000_00002-00113_00002" : { + "minimal_similarity" : 0.45901639344262296, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00120_00001-00192_00001" : { + "minimal_similarity" : 0.4129032258064516, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00120_00001-00192_00002" : { + "minimal_similarity" : 0.4580152671755725, + "maximum_similarity" : 0.5084745762711864, + "matched_token_number" : 60 + }, + "00031_00002-00198_00001" : { + "minimal_similarity" : 0.29605263157894735, + "maximum_similarity" : 0.4891304347826087, + "matched_token_number" : 45 + }, + "00156_00003-00197_00001" : { + "minimal_similarity" : 0.5367647058823529, + "maximum_similarity" : 0.553030303030303, + "matched_token_number" : 73 + }, + "00095_00003-00177_00003" : { + "minimal_similarity" : 0.42441860465116277, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00186_00004-00195_00001" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00186_00004-00195_00002" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00119_00001-00137_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00000_00001-00153_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00113_00002-00147_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00195_00001-00199_00001" : { + "minimal_similarity" : 0.4830508474576271, + "maximum_similarity" : 0.6, + "matched_token_number" : 57 + }, + "00000_00001-00126_00002" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5306122448979592, + "matched_token_number" : 52 + }, + "00137_00002-00194_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00133_00001-00135_00001" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6260162601626016, + "matched_token_number" : 77 + }, + "00113_00002-00204_00001" : { + "minimal_similarity" : 0.5491803278688525, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00160_00001-00200_00002" : { + "minimal_similarity" : 0.6029411764705882, + "maximum_similarity" : 0.6356589147286822, + "matched_token_number" : 82 + }, + "00147_00001-00177_00003" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00002-00142_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00077_00001-00126_00002" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00000_00005-00142_00001" : { + "minimal_similarity" : 0.49166666666666664, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00120_00001-00125_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00121_00001-00197_00001" : { + "minimal_similarity" : 0.5514705882352942, + "maximum_similarity" : 0.5681818181818182, + "matched_token_number" : 75 + }, + "00031_00003-00204_00001" : { + "minimal_similarity" : 0.49166666666666664, + "maximum_similarity" : 0.6941176470588235, + "matched_token_number" : 59 + }, + "00136_00002-00196_00001" : { + "minimal_similarity" : 0.17981072555205047, + "maximum_similarity" : 0.31666666666666665, + "matched_token_number" : 57 + }, + "00005_00002-00153_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00005_00002-00113_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6885245901639344, + "matched_token_number" : 84 + }, + "00192_00001-00194_00001" : { + "minimal_similarity" : 0.41935483870967744, + "maximum_similarity" : 0.6018518518518519, + "matched_token_number" : 65 + }, + "00127_00002-00155_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00013_00002-00155_00001" : { + "minimal_similarity" : 0.49473684210526314, + "maximum_similarity" : 0.5402298850574713, + "matched_token_number" : 47 + }, + "00120_00001-00194_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00201_00001-00203_00002" : { + "minimal_similarity" : 0.29927007299270075, + "maximum_similarity" : 0.47126436781609193, + "matched_token_number" : 41 + }, + "00145_00001-00177_00003" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00097_00002-00127_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00031_00003-00147_00001" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5647058823529412, + "matched_token_number" : 48 + }, + "00186_00004-00197_00001" : { + "minimal_similarity" : 0.5075757575757576, + "maximum_similarity" : 0.6320754716981132, + "matched_token_number" : 67 + }, + "00136_00002-00199_00001" : { + "minimal_similarity" : 0.31666666666666665, + "maximum_similarity" : 0.6, + "matched_token_number" : 57 + }, + "00160_00001-00202_00002" : { + "minimal_similarity" : 0.5673758865248227, + "maximum_similarity" : 0.5882352941176471, + "matched_token_number" : 80 + }, + "00120_00001-00197_00001" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00147_00001-00204_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5084745762711864, + "matched_token_number" : 60 + }, + "00111_00001-00153_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00156_00003-00192_00002" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5190839694656488, + "matched_token_number" : 68 + }, + "00156_00003-00195_00002" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00156_00003-00195_00001" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00155_00001-00178_00002" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00156_00003-00192_00001" : { + "minimal_similarity" : 0.432258064516129, + "maximum_similarity" : 0.49264705882352944, + "matched_token_number" : 67 + }, + "00138_00001-00178_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00125_00001-00160_00001" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6747967479674797, + "matched_token_number" : 83 + }, + "00160_00001-00202_00003" : { + "minimal_similarity" : 0.5531914893617021, + "maximum_similarity" : 0.5735294117647058, + "matched_token_number" : 78 + }, + "00133_00001-00137_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00121_00001-00199_00001" : { + "minimal_similarity" : 0.39705882352941174, + "maximum_similarity" : 0.5684210526315789, + "matched_token_number" : 54 + }, + "00127_00002-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00127_00002-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00129_00008-00195_00001" : { + "minimal_similarity" : 0.2723404255319149, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00126_00002-00155_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00129_00008-00195_00002" : { + "minimal_similarity" : 0.2723404255319149, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00136_00002-00160_00001" : { + "minimal_similarity" : 0.45, + "maximum_similarity" : 0.5955882352941176, + "matched_token_number" : 81 + }, + "00153_00001-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6422764227642277, + "matched_token_number" : 79 + }, + "00121_00001-00127_00002" : { + "minimal_similarity" : 0.6985294117647058, + "maximum_similarity" : 0.7723577235772358, + "matched_token_number" : 95 + }, + "00092_00001-00193_00001" : { + "minimal_similarity" : 0.45864661654135336, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00193_00001-00196_00001" : { + "minimal_similarity" : 0.1892744479495268, + "maximum_similarity" : 0.45112781954887216, + "matched_token_number" : 60 + }, + "00137_00002-00160_00001" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6747967479674797, + "matched_token_number" : 83 + }, + "00031_00002-00121_00001" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.6630434782608695, + "matched_token_number" : 61 + }, + "00141_00002-00195_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00044_00002-00134_00001" : { + "minimal_similarity" : 0.37373737373737376, + "maximum_similarity" : 0.4567901234567901, + "matched_token_number" : 37 + }, + "00141_00002-00195_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00111_00001-00155_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00097_00002-00129_00008" : { + "minimal_similarity" : 0.28085106382978725, + "maximum_similarity" : 0.6226415094339622, + "matched_token_number" : 66 + }, + "00153_00001-00201_00001" : { + "minimal_similarity" : 0.3008130081300813, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00147_00001-00202_00003" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00147_00001-00202_00002" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00178_00002-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00000_00002-00140_00001" : { + "minimal_similarity" : 0.45217391304347826, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00044_00002-00077_00001" : { + "minimal_similarity" : 0.3625, + "maximum_similarity" : 0.5858585858585859, + "matched_token_number" : 58 + }, + "00141_00002-00193_00001" : { + "minimal_similarity" : 0.518796992481203, + "maximum_similarity" : 0.6388888888888888, + "matched_token_number" : 69 + }, + "00121_00001-00160_00001" : { + "minimal_similarity" : 0.47794117647058826, + "maximum_similarity" : 0.47794117647058826, + "matched_token_number" : 65 + }, + "00000_00005-00202_00002" : { + "minimal_similarity" : 0.3900709219858156, + "maximum_similarity" : 0.4583333333333333, + "matched_token_number" : 55 + }, + "00092_00001-00129_00008" : { + "minimal_similarity" : 0.30638297872340425, + "maximum_similarity" : 0.6101694915254238, + "matched_token_number" : 72 + }, + "00000_00005-00202_00003" : { + "minimal_similarity" : 0.3617021276595745, + "maximum_similarity" : 0.425, + "matched_token_number" : 51 + }, + "00192_00002-00203_00002" : { + "minimal_similarity" : 0.635036496350365, + "maximum_similarity" : 0.6641221374045801, + "matched_token_number" : 87 + }, + "00194_00001-00199_00001" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00077_00001-00198_00001" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.5197368421052632, + "matched_token_number" : 79 + }, + "00031_00002-00195_00002" : { + "minimal_similarity" : 0.4322033898305085, + "maximum_similarity" : 0.5543478260869565, + "matched_token_number" : 51 + }, + "00131_00005-00154_00002" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.6638655462184874, + "matched_token_number" : 79 + }, + "00031_00002-00195_00001" : { + "minimal_similarity" : 0.4322033898305085, + "maximum_similarity" : 0.5543478260869565, + "matched_token_number" : 51 + }, + "00111_00001-00126_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00187_00001-00197_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 132 + }, + "00000_00002-00111_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00125_00001-00133_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00119_00001-00134_00001" : { + "minimal_similarity" : 0.4722222222222222, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 51 + }, + "00005_00002-00092_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.6186440677966102, + "matched_token_number" : 73 + }, + "00013_00002-00184_00003" : { + "minimal_similarity" : 0.49473684210526314, + "maximum_similarity" : 0.5, + "matched_token_number" : 47 + }, + "00013_00002-00184_00002" : { + "minimal_similarity" : 0.49473684210526314, + "maximum_similarity" : 0.5, + "matched_token_number" : 47 + }, + "00129_00008-00197_00001" : { + "minimal_similarity" : 0.37446808510638296, + "maximum_similarity" : 0.6666666666666666, + "matched_token_number" : 88 + }, + "00044_00002-00136_00002" : { + "minimal_similarity" : 0.34444444444444444, + "maximum_similarity" : 0.6262626262626263, + "matched_token_number" : 62 + }, + "00000_00005-00145_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00147_00001-00200_00002" : { + "minimal_similarity" : 0.40310077519379844, + "maximum_similarity" : 0.4406779661016949, + "matched_token_number" : 52 + }, + "00095_00003-00204_00001" : { + "minimal_similarity" : 0.38953488372093026, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00129_00008-00199_00001" : { + "minimal_similarity" : 0.2425531914893617, + "maximum_similarity" : 0.6, + "matched_token_number" : 57 + }, + "00077_00001-00197_00001" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.5984848484848485, + "matched_token_number" : 79 + }, + "00126_00002-00154_00002" : { + "minimal_similarity" : 0.5294117647058824, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00134_00001-00138_00001" : { + "minimal_similarity" : 0.3050847457627119, + "maximum_similarity" : 0.4444444444444444, + "matched_token_number" : 36 + }, + "00092_00001-00194_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00000_00005-00111_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00184_00002-00204_00001" : { + "minimal_similarity" : 0.5416666666666666, + "maximum_similarity" : 0.6914893617021277, + "matched_token_number" : 65 + }, + "00097_00002-00120_00001" : { + "minimal_similarity" : 0.4576271186440678, + "maximum_similarity" : 0.5094339622641509, + "matched_token_number" : 54 + }, + "00000_00003-00131_00005" : { + "minimal_similarity" : 0.40625, + "maximum_similarity" : 0.5462184873949579, + "matched_token_number" : 65 + }, + "00136_00002-00192_00001" : { + "minimal_similarity" : 0.46111111111111114, + "maximum_similarity" : 0.535483870967742, + "matched_token_number" : 83 + }, + "00136_00002-00192_00002" : { + "minimal_similarity" : 0.4222222222222222, + "maximum_similarity" : 0.5801526717557252, + "matched_token_number" : 76 + }, + "00120_00001-00195_00002" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00120_00001-00195_00001" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00137_00002-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00186_00004-00198_00001" : { + "minimal_similarity" : 0.39473684210526316, + "maximum_similarity" : 0.5660377358490566, + "matched_token_number" : 60 + }, + "00129_00008-00160_00001" : { + "minimal_similarity" : 0.3659574468085106, + "maximum_similarity" : 0.6323529411764706, + "matched_token_number" : 86 + }, + "00000_00001-00156_00002" : { + "minimal_similarity" : 0.29411764705882354, + "maximum_similarity" : 0.40816326530612246, + "matched_token_number" : 40 + }, + "00000_00001-00156_00003" : { + "minimal_similarity" : 0.29411764705882354, + "maximum_similarity" : 0.40816326530612246, + "matched_token_number" : 40 + }, + "00194_00001-00197_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6111111111111112, + "matched_token_number" : 66 + }, + "00187_00001-00192_00001" : { + "minimal_similarity" : 0.7612903225806451, + "maximum_similarity" : 0.8939393939393939, + "matched_token_number" : 118 + }, + "00187_00001-00192_00002" : { + "minimal_similarity" : 0.7878787878787878, + "maximum_similarity" : 0.7938931297709924, + "matched_token_number" : 104 + }, + "00137_00002-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00013_00002-00154_00002" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00136_00002-00198_00001" : { + "minimal_similarity" : 0.5277777777777778, + "maximum_similarity" : 0.625, + "matched_token_number" : 95 + }, + "00135_00001-00137_00002" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6260162601626016, + "matched_token_number" : 77 + }, + "00119_00001-00130_00002" : { + "minimal_similarity" : 0.46296296296296297, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00121_00001-00195_00001" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00121_00001-00195_00002" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00130_00002-00186_00002" : { + "minimal_similarity" : 0.38405797101449274, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00195_00001-00197_00001" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00005_00002-00183_00004" : { + "minimal_similarity" : 0.44375, + "maximum_similarity" : 0.5035460992907801, + "matched_token_number" : 71 + }, + "00000_00002-00202_00002" : { + "minimal_similarity" : 0.3617021276595745, + "maximum_similarity" : 0.4434782608695652, + "matched_token_number" : 51 + }, + "00130_00002-00186_00004" : { + "minimal_similarity" : 0.4716981132075472, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00160_00001-00178_00002" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6747967479674797, + "matched_token_number" : 83 + }, + "00155_00001-00204_00001" : { + "minimal_similarity" : 0.38333333333333336, + "maximum_similarity" : 0.5287356321839081, + "matched_token_number" : 46 + }, + "00000_00002-00202_00003" : { + "minimal_similarity" : 0.3333333333333333, + "maximum_similarity" : 0.40869565217391307, + "matched_token_number" : 47 + }, + "00000_00003-00130_00002" : { + "minimal_similarity" : 0.4369747899159664, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00013_00002-00095_00003" : { + "minimal_similarity" : 0.36046511627906974, + "maximum_similarity" : 0.6526315789473685, + "matched_token_number" : 62 + }, + "00194_00001-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00130_00002-00154_00002" : { + "minimal_similarity" : 0.5630252100840336, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00184_00002-00203_00002" : { + "minimal_similarity" : 0.45255474452554745, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 62 + }, + "00178_00002-00204_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00187_00001-00193_00001" : { + "minimal_similarity" : 0.6165413533834586, + "maximum_similarity" : 0.6212121212121212, + "matched_token_number" : 82 + }, + "00092_00001-00195_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00092_00001-00195_00002" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00130_00002-00187_00001" : { + "minimal_similarity" : 0.44696969696969696, + "maximum_similarity" : 0.6781609195402298, + "matched_token_number" : 59 + }, + "00095_00003-00140_00001" : { + "minimal_similarity" : 0.25, + "maximum_similarity" : 0.4942528735632184, + "matched_token_number" : 43 + }, + "00077_00001-00125_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00013_00002-00153_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00097_00002-00125_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00095_00003-00147_00001" : { + "minimal_similarity" : 0.4127906976744186, + "maximum_similarity" : 0.6016949152542372, + "matched_token_number" : 71 + }, + "00014_00001-00160_00001" : { + "minimal_similarity" : 0.6029411764705882, + "maximum_similarity" : 0.7592592592592593, + "matched_token_number" : 82 + }, + "00013_00002-00186_00004" : { + "minimal_similarity" : 0.44339622641509435, + "maximum_similarity" : 0.49473684210526314, + "matched_token_number" : 47 + }, + "00147_00001-00201_00001" : { + "minimal_similarity" : 0.2966101694915254, + "maximum_similarity" : 0.40229885057471265, + "matched_token_number" : 35 + }, + "00196_00001-00197_00001" : { + "minimal_similarity" : 0.1861198738170347, + "maximum_similarity" : 0.44696969696969696, + "matched_token_number" : 59 + }, + "00136_00002-00197_00001" : { + "minimal_similarity" : 0.42777777777777776, + "maximum_similarity" : 0.5833333333333334, + "matched_token_number" : 77 + }, + "00121_00001-00196_00001" : { + "minimal_similarity" : 0.15141955835962145, + "maximum_similarity" : 0.35294117647058826, + "matched_token_number" : 48 + }, + "00013_00002-00186_00002" : { + "minimal_similarity" : 0.42028985507246375, + "maximum_similarity" : 0.6105263157894737, + "matched_token_number" : 58 + }, + "00000_00003-00136_00002" : { + "minimal_similarity" : 0.3055555555555556, + "maximum_similarity" : 0.46218487394957986, + "matched_token_number" : 55 + }, + "00044_00002-00133_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00000_00002-00201_00001" : { + "minimal_similarity" : 0.2608695652173913, + "maximum_similarity" : 0.3448275862068966, + "matched_token_number" : 30 + }, + "00097_00002-00126_00002" : { + "minimal_similarity" : 0.4576271186440678, + "maximum_similarity" : 0.5094339622641509, + "matched_token_number" : 54 + }, + "00013_00002-00187_00001" : { + "minimal_similarity" : 0.4621212121212121, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00095_00003-00141_00002" : { + "minimal_similarity" : 0.313953488372093, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00031_00003-00111_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00092_00001-00160_00001" : { + "minimal_similarity" : 0.45588235294117646, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00000_00003-00137_00002" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00031_00002-00129_00008" : { + "minimal_similarity" : 0.251063829787234, + "maximum_similarity" : 0.6413043478260869, + "matched_token_number" : 59 + }, + "00130_00002-00153_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00000_00002-00145_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00000_00003-00135_00001" : { + "minimal_similarity" : 0.4178082191780822, + "maximum_similarity" : 0.5126050420168067, + "matched_token_number" : 61 + }, + "00195_00001-00195_00002" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00000_00001-00155_00001" : { + "minimal_similarity" : 0.45918367346938777, + "maximum_similarity" : 0.5172413793103449, + "matched_token_number" : 45 + }, + "00111_00001-00120_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00031_00002-00127_00002" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00155_00001-00200_00002" : { + "minimal_similarity" : 0.4108527131782946, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00137_00002-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.43902439024390244, + "matched_token_number" : 54 + }, + "00133_00001-00134_00001" : { + "minimal_similarity" : 0.4715447154471545, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00005_00002-00184_00002" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.7021276595744681, + "matched_token_number" : 66 + }, + "00121_00001-00129_00008" : { + "minimal_similarity" : 0.35319148936170214, + "maximum_similarity" : 0.6102941176470589, + "matched_token_number" : 83 + }, + "00000_00002-00203_00002" : { + "minimal_similarity" : 0.4233576642335766, + "maximum_similarity" : 0.5043478260869565, + "matched_token_number" : 58 + }, + "00005_00002-00184_00003" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.7021276595744681, + "matched_token_number" : 66 + }, + "00077_00001-00193_00001" : { + "minimal_similarity" : 0.44375, + "maximum_similarity" : 0.5338345864661654, + "matched_token_number" : 71 + }, + "00095_00003-00142_00001" : { + "minimal_similarity" : 0.36046511627906974, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00095_00003-00200_00002" : { + "minimal_similarity" : 0.3023255813953488, + "maximum_similarity" : 0.40310077519379844, + "matched_token_number" : 52 + }, + "00160_00001-00177_00003" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6747967479674797, + "matched_token_number" : 83 + }, + "00195_00001-00198_00001" : { + "minimal_similarity" : 0.3881578947368421, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00137_00002-00199_00001" : { + "minimal_similarity" : 0.5121951219512195, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00097_00002-00121_00001" : { + "minimal_similarity" : 0.4852941176470588, + "maximum_similarity" : 0.6226415094339622, + "matched_token_number" : 66 + }, + "00005_00002-00187_00001" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.5984848484848485, + "matched_token_number" : 79 + }, + "00196_00001-00198_00001" : { + "minimal_similarity" : 0.1892744479495268, + "maximum_similarity" : 0.39473684210526316, + "matched_token_number" : 60 + }, + "00120_00001-00127_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00092_00001-00196_00001" : { + "minimal_similarity" : 0.14826498422712933, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00120_00001-00129_00008" : { + "minimal_similarity" : 0.2723404255319149, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00013_00002-00092_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00044_00002-00131_00005" : { + "minimal_similarity" : 0.3625, + "maximum_similarity" : 0.5858585858585859, + "matched_token_number" : 58 + }, + "00000_00001-00097_00002" : { + "minimal_similarity" : 0.42452830188679247, + "maximum_similarity" : 0.45918367346938777, + "matched_token_number" : 45 + }, + "00186_00004-00194_00001" : { + "minimal_similarity" : 0.49074074074074076, + "maximum_similarity" : 0.5, + "matched_token_number" : 53 + }, + "00134_00001-00137_00002" : { + "minimal_similarity" : 0.4715447154471545, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00000_00003-00077_00001" : { + "minimal_similarity" : 0.40625, + "maximum_similarity" : 0.5462184873949579, + "matched_token_number" : 65 + }, + "00186_00004-00192_00002" : { + "minimal_similarity" : 0.5114503816793893, + "maximum_similarity" : 0.6320754716981132, + "matched_token_number" : 67 + }, + "00186_00004-00192_00001" : { + "minimal_similarity" : 0.4258064516129032, + "maximum_similarity" : 0.6226415094339622, + "matched_token_number" : 66 + }, + "00155_00001-00202_00002" : { + "minimal_similarity" : 0.375886524822695, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00155_00001-00202_00003" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00121_00001-00193_00001" : { + "minimal_similarity" : 0.5588235294117647, + "maximum_similarity" : 0.5714285714285714, + "matched_token_number" : 76 + }, + "00077_00001-00129_00008" : { + "minimal_similarity" : 0.3021276595744681, + "maximum_similarity" : 0.44375, + "matched_token_number" : 71 + }, + "00005_00002-00186_00004" : { + "minimal_similarity" : 0.39375, + "maximum_similarity" : 0.5943396226415094, + "matched_token_number" : 63 + }, + "00092_00001-00199_00001" : { + "minimal_similarity" : 0.3898305084745763, + "maximum_similarity" : 0.4842105263157895, + "matched_token_number" : 46 + }, + "00137_00002-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00005_00002-00186_00002" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.4782608695652174, + "matched_token_number" : 66 + }, + "00077_00001-00192_00001" : { + "minimal_similarity" : 0.55, + "maximum_similarity" : 0.567741935483871, + "matched_token_number" : 88 + }, + "00136_00002-00194_00001" : { + "minimal_similarity" : 0.35555555555555557, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 64 + }, + "00077_00001-00192_00002" : { + "minimal_similarity" : 0.5375, + "maximum_similarity" : 0.6564885496183206, + "matched_token_number" : 86 + }, + "00095_00003-00202_00002" : { + "minimal_similarity" : 0.3953488372093023, + "maximum_similarity" : 0.48226950354609927, + "matched_token_number" : 68 + }, + "00000_00003-00133_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00095_00003-00202_00003" : { + "minimal_similarity" : 0.3953488372093023, + "maximum_similarity" : 0.48226950354609927, + "matched_token_number" : 68 + }, + "00135_00001-00138_00001" : { + "minimal_similarity" : 0.4452054794520548, + "maximum_similarity" : 0.5508474576271186, + "matched_token_number" : 65 + }, + "00134_00001-00136_00002" : { + "minimal_similarity" : 0.2611111111111111, + "maximum_similarity" : 0.5802469135802469, + "matched_token_number" : 47 + }, + "00031_00002-00125_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00155_00001-00203_00002" : { + "minimal_similarity" : 0.40145985401459855, + "maximum_similarity" : 0.632183908045977, + "matched_token_number" : 55 + }, + "00092_00001-00198_00001" : { + "minimal_similarity" : 0.5131578947368421, + "maximum_similarity" : 0.6610169491525424, + "matched_token_number" : 78 + }, + "00121_00001-00194_00001" : { + "minimal_similarity" : 0.49264705882352944, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00095_00003-00145_00001" : { + "minimal_similarity" : 0.42441860465116277, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00000_00003-00134_00001" : { + "minimal_similarity" : 0.35294117647058826, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 42 + }, + "00186_00004-00193_00001" : { + "minimal_similarity" : 0.45112781954887216, + "maximum_similarity" : 0.5660377358490566, + "matched_token_number" : 60 + }, + "00095_00003-00203_00002" : { + "minimal_similarity" : 0.36627906976744184, + "maximum_similarity" : 0.45985401459854014, + "matched_token_number" : 63 + }, + "00195_00001-00196_00001" : { + "minimal_similarity" : 0.17981072555205047, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00137_00002-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00000_00002-00204_00001" : { + "minimal_similarity" : 0.4166666666666667, + "maximum_similarity" : 0.43478260869565216, + "matched_token_number" : 50 + }, + "00153_00001-00178_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00031_00002-00126_00002" : { + "minimal_similarity" : 0.4322033898305085, + "maximum_similarity" : 0.5543478260869565, + "matched_token_number" : 51 + }, + "00136_00002-00193_00001" : { + "minimal_similarity" : 0.45, + "maximum_similarity" : 0.6090225563909775, + "matched_token_number" : 81 + }, + "00134_00001-00155_00001" : { + "minimal_similarity" : 0.7241379310344828, + "maximum_similarity" : 0.7777777777777778, + "matched_token_number" : 63 + }, + "00130_00002-00201_00001" : { + "minimal_similarity" : 0.41379310344827586, + "maximum_similarity" : 0.41379310344827586, + "matched_token_number" : 36 + }, + "00121_00001-00145_00001" : { + "minimal_similarity" : 0.6985294117647058, + "maximum_similarity" : 0.7723577235772358, + "matched_token_number" : 95 + }, + "00000_00001-00119_00001" : { + "minimal_similarity" : 0.5277777777777778, + "maximum_similarity" : 0.5816326530612245, + "matched_token_number" : 57 + }, + "00140_00001-00141_00002" : { + "minimal_similarity" : 0.46296296296296297, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00131_00005-00136_00002" : { + "minimal_similarity" : 0.4722222222222222, + "maximum_similarity" : 0.53125, + "matched_token_number" : 85 + }, + "00113_00002-00154_00002" : { + "minimal_similarity" : 0.8852459016393442, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00000_00003-00119_00001" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5462962962962963, + "matched_token_number" : 59 + }, + "00000_00005-00119_00001" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00044_00002-00183_00004" : { + "minimal_similarity" : 0.3971631205673759, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00092_00001-00184_00002" : { + "minimal_similarity" : 0.3983050847457627, + "maximum_similarity" : 0.5, + "matched_token_number" : 47 + }, + "00092_00001-00184_00003" : { + "minimal_similarity" : 0.3983050847457627, + "maximum_similarity" : 0.5, + "matched_token_number" : 47 + }, + "00202_00003-00204_00001" : { + "minimal_similarity" : 0.624113475177305, + "maximum_similarity" : 0.7333333333333333, + "matched_token_number" : 88 + }, + "00129_00008-00183_00004" : { + "minimal_similarity" : 0.37872340425531914, + "maximum_similarity" : 0.6312056737588653, + "matched_token_number" : 89 + }, + "00127_00002-00129_00008" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6097560975609756, + "matched_token_number" : 75 + }, + "00197_00001-00204_00001" : { + "minimal_similarity" : 0.7196969696969697, + "maximum_similarity" : 0.7916666666666666, + "matched_token_number" : 95 + }, + "00031_00003-00160_00001" : { + "minimal_similarity" : 0.3897058823529412, + "maximum_similarity" : 0.6235294117647059, + "matched_token_number" : 53 + }, + "00153_00001-00177_00003" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00145_00001-00178_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00031_00003-00203_00002" : { + "minimal_similarity" : 0.4233576642335766, + "maximum_similarity" : 0.6823529411764706, + "matched_token_number" : 58 + }, + "00013_00002-00111_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00077_00001-00141_00002" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00156_00002-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5, + "matched_token_number" : 68 + }, + "00136_00002-00155_00001" : { + "minimal_similarity" : 0.29444444444444445, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00137_00002-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00097_00002-00136_00002" : { + "minimal_similarity" : 0.35555555555555557, + "maximum_similarity" : 0.6037735849056604, + "matched_token_number" : 64 + }, + "00000_00002-00199_00001" : { + "minimal_similarity" : 0.5130434782608696, + "maximum_similarity" : 0.6210526315789474, + "matched_token_number" : 59 + }, + "00160_00001-00195_00002" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00160_00001-00195_00001" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00031_00002-00199_00001" : { + "minimal_similarity" : 0.5157894736842106, + "maximum_similarity" : 0.532608695652174, + "matched_token_number" : 49 + }, + "00195_00002-00204_00001" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.4745762711864407, + "matched_token_number" : 56 + }, + "00125_00001-00129_00008" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6097560975609756, + "matched_token_number" : 75 + }, + "00147_00001-00160_00001" : { + "minimal_similarity" : 0.45588235294117646, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00000_00002-00127_00002" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00095_00003-00131_00005" : { + "minimal_similarity" : 0.37790697674418605, + "maximum_similarity" : 0.40625, + "matched_token_number" : 65 + }, + "00005_00002-00138_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.6186440677966102, + "matched_token_number" : 73 + }, + "00135_00001-00187_00001" : { + "minimal_similarity" : 0.4931506849315068, + "maximum_similarity" : 0.5454545454545454, + "matched_token_number" : 72 + }, + "00200_00002-00204_00001" : { + "minimal_similarity" : 0.5426356589147286, + "maximum_similarity" : 0.5833333333333334, + "matched_token_number" : 70 + }, + "00121_00001-00140_00001" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.7241379310344828, + "matched_token_number" : 63 + }, + "00000_00001-00160_00001" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.6428571428571429, + "matched_token_number" : 63 + }, + "00000_00003-00160_00001" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.5294117647058824, + "matched_token_number" : 63 + }, + "00193_00001-00204_00001" : { + "minimal_similarity" : 0.5864661654135338, + "maximum_similarity" : 0.65, + "matched_token_number" : 78 + }, + "00077_00001-00200_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6511627906976745, + "matched_token_number" : 84 + }, + "00141_00002-00186_00004" : { + "minimal_similarity" : 0.49074074074074076, + "maximum_similarity" : 0.5, + "matched_token_number" : 53 + }, + "00154_00002-00196_00001" : { + "minimal_similarity" : 0.1608832807570978, + "maximum_similarity" : 0.42857142857142855, + "matched_token_number" : 51 + }, + "00141_00002-00186_00002" : { + "minimal_similarity" : 0.39855072463768115, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00014_00001-00092_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00140_00001-00200_00002" : { + "minimal_similarity" : 0.43410852713178294, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00031_00003-00186_00002" : { + "minimal_similarity" : 0.4057971014492754, + "maximum_similarity" : 0.6588235294117647, + "matched_token_number" : 56 + }, + "00126_00002-00202_00002" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00002-00194_00001" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00126_00002-00202_00003" : { + "minimal_similarity" : 0.41843971631205673, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00129_00008-00137_00002" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6097560975609756, + "matched_token_number" : 75 + }, + "00121_00001-00204_00001" : { + "minimal_similarity" : 0.5441176470588235, + "maximum_similarity" : 0.6166666666666667, + "matched_token_number" : 74 + }, + "00184_00002-00202_00002" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.6382978723404256, + "matched_token_number" : 60 + }, + "00184_00002-00202_00003" : { + "minimal_similarity" : 0.4397163120567376, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 62 + }, + "00129_00008-00200_00002" : { + "minimal_similarity" : 0.2680851063829787, + "maximum_similarity" : 0.4883720930232558, + "matched_token_number" : 63 + }, + "00097_00002-00131_00005" : { + "minimal_similarity" : 0.3, + "maximum_similarity" : 0.4528301886792453, + "matched_token_number" : 48 + }, + "00031_00003-00186_00004" : { + "minimal_similarity" : 0.5566037735849056, + "maximum_similarity" : 0.6941176470588235, + "matched_token_number" : 59 + }, + "00145_00001-00199_00001" : { + "minimal_similarity" : 0.5121951219512195, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00142_00001-00154_00002" : { + "minimal_similarity" : 0.5294117647058824, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00092_00001-00201_00001" : { + "minimal_similarity" : 0.2966101694915254, + "maximum_similarity" : 0.40229885057471265, + "matched_token_number" : 35 + }, + "00135_00001-00136_00002" : { + "minimal_similarity" : 0.48333333333333334, + "maximum_similarity" : 0.5958904109589042, + "matched_token_number" : 87 + }, + "00005_00002-00095_00003" : { + "minimal_similarity" : 0.37790697674418605, + "maximum_similarity" : 0.40625, + "matched_token_number" : 65 + }, + "00119_00001-00138_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00014_00001-00156_00003" : { + "minimal_similarity" : 0.5220588235294118, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00153_00001-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00014_00001-00156_00002" : { + "minimal_similarity" : 0.5220588235294118, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00092_00001-00138_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 118 + }, + "00095_00003-00136_00002" : { + "minimal_similarity" : 0.4222222222222222, + "maximum_similarity" : 0.4418604651162791, + "matched_token_number" : 76 + }, + "00156_00003-00196_00001" : { + "minimal_similarity" : 0.25236593059936907, + "maximum_similarity" : 0.5882352941176471, + "matched_token_number" : 80 + }, + "00141_00002-00203_00002" : { + "minimal_similarity" : 0.48905109489051096, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00044_00002-00137_00002" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00177_00003-00201_00001" : { + "minimal_similarity" : 0.3008130081300813, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00000_00003-00203_00002" : { + "minimal_similarity" : 0.45985401459854014, + "maximum_similarity" : 0.5294117647058824, + "matched_token_number" : 63 + }, + "00119_00001-00184_00003" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00111_00001-00133_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00119_00001-00184_00002" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00000_00001-00203_00002" : { + "minimal_similarity" : 0.40875912408759124, + "maximum_similarity" : 0.5714285714285714, + "matched_token_number" : 56 + }, + "00000_00002-00178_00002" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00014_00001-00097_00002" : { + "minimal_similarity" : 0.5833333333333334, + "maximum_similarity" : 0.5943396226415094, + "matched_token_number" : 63 + }, + "00125_00001-00140_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00077_00001-00120_00001" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00120_00001-00202_00003" : { + "minimal_similarity" : 0.41843971631205673, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00014_00001-00198_00001" : { + "minimal_similarity" : 0.3618421052631579, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00120_00001-00202_00002" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00095_00003-00178_00002" : { + "minimal_similarity" : 0.42441860465116277, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00005_00002-00201_00001" : { + "minimal_similarity" : 0.24375, + "maximum_similarity" : 0.4482758620689655, + "matched_token_number" : 39 + }, + "00097_00002-00187_00001" : { + "minimal_similarity" : 0.42424242424242425, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00044_00002-00111_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00134_00001-00197_00001" : { + "minimal_similarity" : 0.36363636363636365, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 48 + }, + "00113_00002-00133_00001" : { + "minimal_similarity" : 0.943089430894309, + "maximum_similarity" : 0.9508196721311475, + "matched_token_number" : 116 + }, + "00137_00002-00140_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00131_00005-00178_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00092_00001-00133_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00119_00001-00133_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00153_00001-00193_00001" : { + "minimal_similarity" : 0.5488721804511278, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00031_00003-00119_00001" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 55 + }, + "00130_00002-00184_00003" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5057471264367817, + "matched_token_number" : 44 + }, + "00130_00002-00184_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5057471264367817, + "matched_token_number" : 44 + }, + "00187_00001-00196_00001" : { + "minimal_similarity" : 0.1861198738170347, + "maximum_similarity" : 0.44696969696969696, + "matched_token_number" : 59 + }, + "00127_00002-00140_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00013_00002-00183_00004" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.5684210526315789, + "matched_token_number" : 54 + }, + "00014_00001-00177_00003" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00031_00003-00097_00002" : { + "minimal_similarity" : 0.42452830188679247, + "maximum_similarity" : 0.5294117647058824, + "matched_token_number" : 45 + }, + "00044_00002-00200_00002" : { + "minimal_similarity" : 0.3875968992248062, + "maximum_similarity" : 0.5050505050505051, + "matched_token_number" : 50 + }, + "00014_00001-00130_00002" : { + "minimal_similarity" : 0.46296296296296297, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00138_00001-00155_00001" : { + "minimal_similarity" : 0.3220338983050847, + "maximum_similarity" : 0.4367816091954023, + "matched_token_number" : 38 + }, + "00192_00002-00198_00001" : { + "minimal_similarity" : 0.5197368421052632, + "maximum_similarity" : 0.6030534351145038, + "matched_token_number" : 79 + }, + "00000_00005-00092_00001" : { + "minimal_similarity" : 0.38333333333333336, + "maximum_similarity" : 0.3898305084745763, + "matched_token_number" : 46 + }, + "00178_00002-00194_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00044_00002-00141_00002" : { + "minimal_similarity" : 0.4537037037037037, + "maximum_similarity" : 0.494949494949495, + "matched_token_number" : 49 + }, + "00111_00001-00154_00002" : { + "minimal_similarity" : 0.8780487804878049, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00133_00001-00195_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00133_00001-00195_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00147_00001-00203_00002" : { + "minimal_similarity" : 0.46715328467153283, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00184_00003-00198_00001" : { + "minimal_similarity" : 0.40789473684210525, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 62 + }, + "00000_00001-00092_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5714285714285714, + "matched_token_number" : 56 + }, + "00194_00001-00198_00001" : { + "minimal_similarity" : 0.3618421052631579, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00160_00001-00203_00002" : { + "minimal_similarity" : 0.5693430656934306, + "maximum_similarity" : 0.5735294117647058, + "matched_token_number" : 78 + }, + "00031_00002-00194_00001" : { + "minimal_similarity" : 0.5185185185185185, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00000_00005-00203_00002" : { + "minimal_similarity" : 0.4744525547445255, + "maximum_similarity" : 0.5416666666666666, + "matched_token_number" : 65 + }, + "00014_00001-00119_00001" : { + "minimal_similarity" : 0.9722222222222222, + "maximum_similarity" : 0.9722222222222222, + "matched_token_number" : 105 + }, + "00000_00003-00092_00001" : { + "minimal_similarity" : 0.40336134453781514, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00130_00002-00133_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00097_00002-00140_00001" : { + "minimal_similarity" : 0.42452830188679247, + "maximum_similarity" : 0.5172413793103449, + "matched_token_number" : 45 + }, + "00014_00001-00126_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00138_00001-00197_00001" : { + "minimal_similarity" : 0.48484848484848486, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00113_00002-00184_00002" : { + "minimal_similarity" : 0.5245901639344263, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00031_00003-00092_00001" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5647058823529412, + "matched_token_number" : 48 + }, + "00113_00002-00184_00003" : { + "minimal_similarity" : 0.5245901639344263, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00126_00002-00194_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00125_00001-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00092_00001-00121_00001" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00127_00002-00204_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00000_00005-00013_00002" : { + "minimal_similarity" : 0.36666666666666664, + "maximum_similarity" : 0.4631578947368421, + "matched_token_number" : 44 + }, + "00131_00005-00199_00001" : { + "minimal_similarity" : 0.41875, + "maximum_similarity" : 0.7052631578947368, + "matched_token_number" : 67 + }, + "00126_00002-00134_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.691358024691358, + "matched_token_number" : 56 + }, + "00140_00001-00197_00001" : { + "minimal_similarity" : 0.44696969696969696, + "maximum_similarity" : 0.6781609195402298, + "matched_token_number" : 59 + }, + "00000_00001-00013_00002" : { + "minimal_similarity" : 0.4489795918367347, + "maximum_similarity" : 0.4631578947368421, + "matched_token_number" : 44 + }, + "00135_00001-00178_00002" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6260162601626016, + "matched_token_number" : 77 + }, + "00186_00002-00198_00001" : { + "minimal_similarity" : 0.5131578947368421, + "maximum_similarity" : 0.5652173913043478, + "matched_token_number" : 78 + }, + "00201_00001-00202_00002" : { + "minimal_similarity" : 0.3120567375886525, + "maximum_similarity" : 0.5057471264367817, + "matched_token_number" : 44 + }, + "00131_00005-00204_00001" : { + "minimal_similarity" : 0.5125, + "maximum_similarity" : 0.6833333333333333, + "matched_token_number" : 82 + }, + "00154_00002-00204_00001" : { + "minimal_similarity" : 0.5333333333333333, + "maximum_similarity" : 0.5378151260504201, + "matched_token_number" : 64 + }, + "00120_00001-00155_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00119_00001-00142_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00097_00002-00199_00001" : { + "minimal_similarity" : 0.49056603773584906, + "maximum_similarity" : 0.5473684210526316, + "matched_token_number" : 52 + }, + "00199_00001-00200_00002" : { + "minimal_similarity" : 0.4263565891472868, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00192_00001-00192_00002" : { + "minimal_similarity" : 0.7483870967741936, + "maximum_similarity" : 0.8854961832061069, + "matched_token_number" : 116 + }, + "00111_00001-00184_00002" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00111_00001-00184_00003" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00133_00001-00153_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00127_00002-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00186_00002-00186_00004" : { + "minimal_similarity" : 0.4927536231884058, + "maximum_similarity" : 0.6415094339622641, + "matched_token_number" : 68 + }, + "00138_00001-00202_00003" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00014_00001-00186_00002" : { + "minimal_similarity" : 0.39855072463768115, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00138_00001-00202_00002" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00156_00003-00204_00001" : { + "minimal_similarity" : 0.4852941176470588, + "maximum_similarity" : 0.55, + "matched_token_number" : 66 + }, + "00192_00001-00202_00002" : { + "minimal_similarity" : 0.7548387096774194, + "maximum_similarity" : 0.8297872340425532, + "matched_token_number" : 117 + }, + "00192_00001-00202_00003" : { + "minimal_similarity" : 0.7741935483870968, + "maximum_similarity" : 0.851063829787234, + "matched_token_number" : 120 + }, + "00014_00001-00186_00004" : { + "minimal_similarity" : 0.49074074074074076, + "maximum_similarity" : 0.5, + "matched_token_number" : 53 + }, + "00178_00002-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00133_00001-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6422764227642277, + "matched_token_number" : 79 + }, + "00125_00001-00154_00002" : { + "minimal_similarity" : 0.8780487804878049, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00142_00001-00184_00002" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00142_00001-00184_00003" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00131_00005-00140_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00125_00001-00204_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00111_00001-00145_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00138_00001-00192_00002" : { + "minimal_similarity" : 0.44274809160305345, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00000_00001-00130_00002" : { + "minimal_similarity" : 0.5204081632653061, + "maximum_similarity" : 0.5862068965517241, + "matched_token_number" : 51 + }, + "00119_00001-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00092_00001-00126_00002" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00138_00001-00192_00001" : { + "minimal_similarity" : 0.38064516129032255, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00129_00008-00141_00002" : { + "minimal_similarity" : 0.2978723404255319, + "maximum_similarity" : 0.6481481481481481, + "matched_token_number" : 70 + }, + "00141_00002-00156_00003" : { + "minimal_similarity" : 0.5220588235294118, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00000_00002-00005_00002" : { + "minimal_similarity" : 0.39375, + "maximum_similarity" : 0.5478260869565217, + "matched_token_number" : 63 + }, + "00141_00002-00156_00002" : { + "minimal_similarity" : 0.5220588235294118, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00014_00001-00203_00002" : { + "minimal_similarity" : 0.48905109489051096, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00031_00003-00135_00001" : { + "minimal_similarity" : 0.3835616438356164, + "maximum_similarity" : 0.6588235294117647, + "matched_token_number" : 56 + }, + "00111_00001-00129_00008" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6097560975609756, + "matched_token_number" : 75 + }, + "00126_00002-00127_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00005_00002-00147_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.6186440677966102, + "matched_token_number" : 73 + }, + "00201_00001-00202_00003" : { + "minimal_similarity" : 0.3120567375886525, + "maximum_similarity" : 0.5057471264367817, + "matched_token_number" : 44 + }, + "00005_00002-00044_00002" : { + "minimal_similarity" : 0.3625, + "maximum_similarity" : 0.5858585858585859, + "matched_token_number" : 58 + }, + "00113_00002-00129_00008" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6147540983606558, + "matched_token_number" : 75 + }, + "00097_00002-00194_00001" : { + "minimal_similarity" : 0.5833333333333334, + "maximum_similarity" : 0.5943396226415094, + "matched_token_number" : 63 + }, + "00000_00002-00131_00005" : { + "minimal_similarity" : 0.39375, + "maximum_similarity" : 0.5478260869565217, + "matched_token_number" : 63 + }, + "00127_00002-00154_00002" : { + "minimal_similarity" : 0.8780487804878049, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00192_00002-00201_00001" : { + "minimal_similarity" : 0.3816793893129771, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00119_00001-00154_00002" : { + "minimal_similarity" : 0.5714285714285714, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 68 + }, + "00186_00002-00203_00002" : { + "minimal_similarity" : 0.6304347826086957, + "maximum_similarity" : 0.635036496350365, + "matched_token_number" : 87 + }, + "00000_00005-00177_00003" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00131_00005-00145_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00119_00001-00201_00001" : { + "minimal_similarity" : 0.37037037037037035, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00000_00005-00130_00002" : { + "minimal_similarity" : 0.4166666666666667, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00000_00001-00177_00003" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00192_00002-00193_00001" : { + "minimal_similarity" : 0.6541353383458647, + "maximum_similarity" : 0.6641221374045801, + "matched_token_number" : 87 + }, + "00113_00002-00138_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00183_00004-00192_00001" : { + "minimal_similarity" : 0.6, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 93 + }, + "00145_00001-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00183_00004-00192_00002" : { + "minimal_similarity" : 0.6312056737588653, + "maximum_similarity" : 0.6793893129770993, + "matched_token_number" : 89 + }, + "00000_00001-00135_00001" : { + "minimal_similarity" : 0.4041095890410959, + "maximum_similarity" : 0.6020408163265306, + "matched_token_number" : 59 + }, + "00145_00001-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00044_00002-00197_00001" : { + "minimal_similarity" : 0.5378787878787878, + "maximum_similarity" : 0.7171717171717171, + "matched_token_number" : 71 + }, + "00141_00002-00198_00001" : { + "minimal_similarity" : 0.3618421052631579, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00111_00001-00140_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00111_00001-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.43902439024390244, + "matched_token_number" : 54 + }, + "00014_00001-00142_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00125_00001-00138_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00005_00002-00154_00002" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.6638655462184874, + "matched_token_number" : 79 + }, + "00183_00004-00195_00001" : { + "minimal_similarity" : 0.3404255319148936, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00111_00001-00201_00001" : { + "minimal_similarity" : 0.3008130081300813, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00183_00004-00200_00002" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5271317829457365, + "matched_token_number" : 68 + }, + "00183_00004-00195_00002" : { + "minimal_similarity" : 0.3404255319148936, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00131_00005-00187_00001" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.5984848484848485, + "matched_token_number" : 79 + }, + "00014_00001-00135_00001" : { + "minimal_similarity" : 0.4589041095890411, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00140_00001-00155_00001" : { + "minimal_similarity" : 0.5747126436781609, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00113_00002-00142_00001" : { + "minimal_similarity" : 0.5737704918032787, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00127_00002-00138_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00113_00002-00145_00001" : { + "minimal_similarity" : 0.943089430894309, + "maximum_similarity" : 0.9508196721311475, + "matched_token_number" : 116 + }, + "00000_00003-00097_00002" : { + "minimal_similarity" : 0.40336134453781514, + "maximum_similarity" : 0.4528301886792453, + "matched_token_number" : 48 + }, + "00129_00008-00192_00002" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.6870229007633588, + "matched_token_number" : 90 + }, + "00141_00002-00160_00001" : { + "minimal_similarity" : 0.6029411764705882, + "maximum_similarity" : 0.7592592592592593, + "matched_token_number" : 82 + }, + "00129_00008-00192_00001" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.6451612903225806, + "matched_token_number" : 100 + }, + "00145_00001-00194_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00000_00005-00135_00001" : { + "minimal_similarity" : 0.4246575342465753, + "maximum_similarity" : 0.5166666666666667, + "matched_token_number" : 62 + }, + "00153_00001-00156_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00031_00003-00195_00001" : { + "minimal_similarity" : 0.3728813559322034, + "maximum_similarity" : 0.5176470588235295, + "matched_token_number" : 44 + }, + "00031_00003-00195_00002" : { + "minimal_similarity" : 0.3728813559322034, + "maximum_similarity" : 0.5176470588235295, + "matched_token_number" : 44 + }, + "00113_00002-00201_00001" : { + "minimal_similarity" : 0.30327868852459017, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00153_00001-00156_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00113_00002-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.4426229508196721, + "matched_token_number" : 54 + }, + "00097_00002-00145_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00013_00002-00120_00001" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5052631578947369, + "matched_token_number" : 48 + }, + "00000_00005-00186_00004" : { + "minimal_similarity" : 0.39166666666666666, + "maximum_similarity" : 0.44339622641509435, + "matched_token_number" : 47 + }, + "00111_00001-00138_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00127_00002-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.43902439024390244, + "matched_token_number" : 54 + }, + "00000_00005-00186_00002" : { + "minimal_similarity" : 0.4492753623188406, + "maximum_similarity" : 0.5166666666666667, + "matched_token_number" : 62 + }, + "00000_00001-00186_00002" : { + "minimal_similarity" : 0.39855072463768115, + "maximum_similarity" : 0.5612244897959183, + "matched_token_number" : 55 + }, + "00125_00001-00145_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00000_00001-00186_00004" : { + "minimal_similarity" : 0.4811320754716981, + "maximum_similarity" : 0.5204081632653061, + "matched_token_number" : 51 + }, + "00147_00001-00156_00003" : { + "minimal_similarity" : 0.35294117647058826, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00147_00001-00156_00002" : { + "minimal_similarity" : 0.35294117647058826, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00119_00001-00147_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00000_00003-00156_00002" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3949579831932773, + "matched_token_number" : 47 + }, + "00131_00005-00194_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00000_00003-00156_00003" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3949579831932773, + "matched_token_number" : 47 + }, + "00198_00001-00201_00001" : { + "minimal_similarity" : 0.2631578947368421, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00186_00002-00193_00001" : { + "minimal_similarity" : 0.5579710144927537, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 77 + }, + "00133_00001-00160_00001" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6747967479674797, + "matched_token_number" : 83 + }, + "00153_00001-00160_00001" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6747967479674797, + "matched_token_number" : 83 + }, + "00125_00001-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.43902439024390244, + "matched_token_number" : 54 + }, + "00044_00002-00153_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00014_00001-00193_00001" : { + "minimal_similarity" : 0.518796992481203, + "maximum_similarity" : 0.6388888888888888, + "matched_token_number" : 69 + }, + "00111_00001-00142_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00192_00001-00197_00001" : { + "minimal_similarity" : 0.7612903225806451, + "maximum_similarity" : 0.8939393939393939, + "matched_token_number" : 118 + }, + "00077_00001-00111_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00097_00002-00204_00001" : { + "minimal_similarity" : 0.44166666666666665, + "maximum_similarity" : 0.5, + "matched_token_number" : 53 + }, + "00127_00002-00145_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00153_00001-00184_00002" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00153_00001-00184_00003" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00134_00001-00200_00002" : { + "minimal_similarity" : 0.3643410852713178, + "maximum_similarity" : 0.5802469135802469, + "matched_token_number" : 47 + }, + "00184_00003-00201_00001" : { + "minimal_similarity" : 0.3617021276595745, + "maximum_similarity" : 0.39080459770114945, + "matched_token_number" : 34 + }, + "00113_00002-00121_00001" : { + "minimal_similarity" : 0.6911764705882353, + "maximum_similarity" : 0.7704918032786885, + "matched_token_number" : 94 + }, + "00131_00005-00196_00001" : { + "minimal_similarity" : 0.1640378548895899, + "maximum_similarity" : 0.325, + "matched_token_number" : 52 + }, + "00119_00001-00145_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00121_00001-00138_00001" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00031_00003-00193_00001" : { + "minimal_similarity" : 0.40601503759398494, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00126_00002-00197_00001" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00005_00002-00014_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00000_00005-00121_00001" : { + "minimal_similarity" : 0.3382352941176471, + "maximum_similarity" : 0.38333333333333336, + "matched_token_number" : 46 + }, + "00160_00001-00183_00004" : { + "minimal_similarity" : 0.574468085106383, + "maximum_similarity" : 0.5955882352941176, + "matched_token_number" : 81 + }, + "00127_00002-00131_00005" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00031_00002-00113_00002" : { + "minimal_similarity" : 0.4672131147540984, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00000_00005-00126_00002" : { + "minimal_similarity" : 0.49166666666666664, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00127_00002-00184_00003" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00000_00003-00121_00001" : { + "minimal_similarity" : 0.36764705882352944, + "maximum_similarity" : 0.42016806722689076, + "matched_token_number" : 50 + }, + "00127_00002-00184_00002" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00133_00001-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00031_00003-00153_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00199_00001-00203_00002" : { + "minimal_similarity" : 0.46715328467153283, + "maximum_similarity" : 0.6736842105263158, + "matched_token_number" : 64 + }, + "00000_00002-00187_00001" : { + "minimal_similarity" : 0.3787878787878788, + "maximum_similarity" : 0.43478260869565216, + "matched_token_number" : 50 + }, + "00013_00002-00197_00001" : { + "minimal_similarity" : 0.4621212121212121, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00111_00001-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00005_00002-00140_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00177_00003-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00126_00002-00131_00005" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00005_00002-00198_00001" : { + "minimal_similarity" : 0.49375, + "maximum_similarity" : 0.5197368421052632, + "matched_token_number" : 79 + }, + "00000_00001-00147_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5714285714285714, + "matched_token_number" : 56 + }, + "00111_00001-00147_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00003-00147_00001" : { + "minimal_similarity" : 0.40336134453781514, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00119_00001-00193_00001" : { + "minimal_similarity" : 0.518796992481203, + "maximum_similarity" : 0.6388888888888888, + "matched_token_number" : 69 + }, + "00145_00001-00204_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00000_00003-00193_00001" : { + "minimal_similarity" : 0.45864661654135336, + "maximum_similarity" : 0.5126050420168067, + "matched_token_number" : 61 + }, + "00156_00003-00184_00003" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.5531914893617021, + "matched_token_number" : 52 + }, + "00183_00004-00197_00001" : { + "minimal_similarity" : 0.5886524822695035, + "maximum_similarity" : 0.6287878787878788, + "matched_token_number" : 83 + }, + "00156_00003-00184_00002" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.5531914893617021, + "matched_token_number" : 52 + }, + "00147_00001-00153_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00005-00153_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00154_00002-00201_00001" : { + "minimal_similarity" : 0.2857142857142857, + "maximum_similarity" : 0.39080459770114945, + "matched_token_number" : 34 + }, + "00142_00001-00193_00001" : { + "minimal_similarity" : 0.42857142857142855, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00156_00002-00197_00001" : { + "minimal_similarity" : 0.5367647058823529, + "maximum_similarity" : 0.553030303030303, + "matched_token_number" : 73 + }, + "00044_00002-00155_00001" : { + "minimal_similarity" : 0.4444444444444444, + "maximum_similarity" : 0.5057471264367817, + "matched_token_number" : 44 + }, + "00077_00001-00155_00001" : { + "minimal_similarity" : 0.3125, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00121_00001-00133_00001" : { + "minimal_similarity" : 0.6985294117647058, + "maximum_similarity" : 0.7723577235772358, + "matched_token_number" : 95 + }, + "00044_00002-00195_00002" : { + "minimal_similarity" : 0.3813559322033898, + "maximum_similarity" : 0.45454545454545453, + "matched_token_number" : 45 + }, + "00044_00002-00195_00001" : { + "minimal_similarity" : 0.3813559322033898, + "maximum_similarity" : 0.45454545454545453, + "matched_token_number" : 45 + }, + "00005_00002-00177_00003" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00000_00001-00193_00001" : { + "minimal_similarity" : 0.42105263157894735, + "maximum_similarity" : 0.5714285714285714, + "matched_token_number" : 56 + }, + "00119_00001-00177_00003" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00130_00002-00177_00003" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00000_00003-00126_00002" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00184_00003-00195_00001" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00127_00002-00136_00002" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5853658536585366, + "matched_token_number" : 72 + }, + "00195_00002-00199_00001" : { + "minimal_similarity" : 0.4830508474576271, + "maximum_similarity" : 0.6, + "matched_token_number" : 57 + }, + "00137_00002-00154_00002" : { + "minimal_similarity" : 0.8780487804878049, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00184_00003-00195_00002" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00113_00002-00140_00001" : { + "minimal_similarity" : 0.5655737704918032, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00111_00001-00204_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00000_00003-00142_00001" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00000_00001-00142_00001" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5306122448979592, + "matched_token_number" : 52 + }, + "00177_00003-00193_00001" : { + "minimal_similarity" : 0.5488721804511278, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00119_00001-00126_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00013_00002-00192_00001" : { + "minimal_similarity" : 0.36774193548387096, + "maximum_similarity" : 0.6, + "matched_token_number" : 57 + }, + "00031_00002-00134_00001" : { + "minimal_similarity" : 0.42391304347826086, + "maximum_similarity" : 0.48148148148148145, + "matched_token_number" : 39 + }, + "00013_00002-00192_00002" : { + "minimal_similarity" : 0.42748091603053434, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00005_00002-00193_00001" : { + "minimal_similarity" : 0.44375, + "maximum_similarity" : 0.5338345864661654, + "matched_token_number" : 71 + }, + "00000_00002-00155_00001" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5287356321839081, + "matched_token_number" : 46 + }, + "00031_00003-00177_00003" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00145_00001-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00013_00002-00125_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00000_00003-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5546218487394958, + "matched_token_number" : 66 + }, + "00005_00002-00121_00001" : { + "minimal_similarity" : 0.475, + "maximum_similarity" : 0.5588235294117647, + "matched_token_number" : 76 + }, + "00177_00003-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.43902439024390244, + "matched_token_number" : 54 + }, + "00133_00001-00141_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00000_00001-00195_00002" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5306122448979592, + "matched_token_number" : 52 + }, + "00031_00002-00187_00001" : { + "minimal_similarity" : 0.4090909090909091, + "maximum_similarity" : 0.5869565217391305, + "matched_token_number" : 54 + }, + "00000_00001-00195_00001" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5306122448979592, + "matched_token_number" : 52 + }, + "00121_00001-00131_00005" : { + "minimal_similarity" : 0.475, + "maximum_similarity" : 0.5588235294117647, + "matched_token_number" : 76 + }, + "00000_00001-00198_00001" : { + "minimal_similarity" : 0.4276315789473684, + "maximum_similarity" : 0.6632653061224489, + "matched_token_number" : 65 + }, + "00177_00003-00204_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00125_00001-00178_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00005_00002-00204_00001" : { + "minimal_similarity" : 0.5125, + "maximum_similarity" : 0.6833333333333333, + "matched_token_number" : 82 + }, + "00077_00001-00153_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00140_00001-00195_00002" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00140_00001-00195_00001" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00121_00001-00184_00003" : { + "minimal_similarity" : 0.3897058823529412, + "maximum_similarity" : 0.5638297872340425, + "matched_token_number" : 53 + }, + "00121_00001-00184_00002" : { + "minimal_similarity" : 0.3897058823529412, + "maximum_similarity" : 0.5638297872340425, + "matched_token_number" : 53 + }, + "00119_00001-00156_00003" : { + "minimal_similarity" : 0.5220588235294118, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00092_00001-00156_00002" : { + "minimal_similarity" : 0.35294117647058826, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00092_00001-00156_00003" : { + "minimal_similarity" : 0.35294117647058826, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00136_00002-00183_00004" : { + "minimal_similarity" : 0.45, + "maximum_similarity" : 0.574468085106383, + "matched_token_number" : 81 + }, + "00000_00003-00195_00002" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00119_00001-00156_00002" : { + "minimal_similarity" : 0.5220588235294118, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00000_00003-00195_00001" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00000_00002-00077_00001" : { + "minimal_similarity" : 0.39375, + "maximum_similarity" : 0.5478260869565217, + "matched_token_number" : 63 + }, + "00138_00001-00199_00001" : { + "minimal_similarity" : 0.3898305084745763, + "maximum_similarity" : 0.4842105263157895, + "matched_token_number" : 46 + }, + "00005_00002-00196_00001" : { + "minimal_similarity" : 0.1640378548895899, + "maximum_similarity" : 0.325, + "matched_token_number" : 52 + }, + "00013_00002-00160_00001" : { + "minimal_similarity" : 0.39705882352941174, + "maximum_similarity" : 0.5684210526315789, + "matched_token_number" : 54 + }, + "00044_00002-00192_00001" : { + "minimal_similarity" : 0.45806451612903226, + "maximum_similarity" : 0.7171717171717171, + "matched_token_number" : 71 + }, + "00044_00002-00192_00002" : { + "minimal_similarity" : 0.5190839694656488, + "maximum_similarity" : 0.6868686868686869, + "matched_token_number" : 68 + }, + "00126_00002-00199_00001" : { + "minimal_similarity" : 0.4830508474576271, + "maximum_similarity" : 0.6, + "matched_token_number" : 57 + }, + "00127_00002-00133_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00195_00002-00196_00001" : { + "minimal_similarity" : 0.17981072555205047, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00156_00003-00187_00001" : { + "minimal_similarity" : 0.5367647058823529, + "maximum_similarity" : 0.553030303030303, + "matched_token_number" : 73 + }, + "00014_00001-00095_00003" : { + "minimal_similarity" : 0.313953488372093, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00111_00001-00131_00005" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00134_00001-00199_00001" : { + "minimal_similarity" : 0.45263157894736844, + "maximum_similarity" : 0.5308641975308642, + "matched_token_number" : 43 + }, + "00138_00001-00183_00004" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.4576271186440678, + "matched_token_number" : 54 + }, + "00092_00001-00135_00001" : { + "minimal_similarity" : 0.4452054794520548, + "maximum_similarity" : 0.5508474576271186, + "matched_token_number" : 65 + }, + "00000_00002-00134_00001" : { + "minimal_similarity" : 0.3652173913043478, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 42 + }, + "00119_00001-00129_00008" : { + "minimal_similarity" : 0.2978723404255319, + "maximum_similarity" : 0.6481481481481481, + "matched_token_number" : 70 + }, + "00121_00001-00154_00002" : { + "minimal_similarity" : 0.6397058823529411, + "maximum_similarity" : 0.7310924369747899, + "matched_token_number" : 87 + }, + "00184_00002-00187_00001" : { + "minimal_similarity" : 0.5227272727272727, + "maximum_similarity" : 0.7340425531914894, + "matched_token_number" : 69 + }, + "00202_00002-00203_00002" : { + "minimal_similarity" : 0.6737588652482269, + "maximum_similarity" : 0.6934306569343066, + "matched_token_number" : 95 + }, + "00005_00002-00145_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00119_00001-00140_00001" : { + "minimal_similarity" : 0.46296296296296297, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00031_00003-00126_00002" : { + "minimal_similarity" : 0.3728813559322034, + "maximum_similarity" : 0.5176470588235295, + "matched_token_number" : 44 + }, + "00113_00002-00126_00002" : { + "minimal_similarity" : 0.5737704918032787, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00092_00001-00154_00002" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00077_00001-00137_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00200_00002-00202_00002" : { + "minimal_similarity" : 0.48936170212765956, + "maximum_similarity" : 0.5348837209302325, + "matched_token_number" : 69 + }, + "00130_00002-00204_00001" : { + "minimal_similarity" : 0.4583333333333333, + "maximum_similarity" : 0.632183908045977, + "matched_token_number" : 55 + }, + "00134_00001-00178_00002" : { + "minimal_similarity" : 0.4715447154471545, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00044_00002-00120_00001" : { + "minimal_similarity" : 0.3813559322033898, + "maximum_similarity" : 0.45454545454545453, + "matched_token_number" : 45 + }, + "00141_00002-00184_00003" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00097_00002-00133_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00141_00002-00184_00002" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00140_00001-00202_00003" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.6551724137931034, + "matched_token_number" : 57 + }, + "00013_00002-00141_00002" : { + "minimal_similarity" : 0.5185185185185185, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00000_00003-00013_00002" : { + "minimal_similarity" : 0.37815126050420167, + "maximum_similarity" : 0.47368421052631576, + "matched_token_number" : 45 + }, + "00135_00001-00145_00001" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6260162601626016, + "matched_token_number" : 77 + }, + "00097_00002-00113_00002" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00092_00001-00187_00001" : { + "minimal_similarity" : 0.48484848484848486, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00140_00001-00202_00002" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.6551724137931034, + "matched_token_number" : 57 + }, + "00113_00002-00177_00003" : { + "minimal_similarity" : 0.943089430894309, + "maximum_similarity" : 0.9508196721311475, + "matched_token_number" : 116 + }, + "00129_00008-00153_00001" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6097560975609756, + "matched_token_number" : 75 + }, + "00000_00002-00136_00002" : { + "minimal_similarity" : 0.3055555555555556, + "maximum_similarity" : 0.4782608695652174, + "matched_token_number" : 55 + }, + "00136_00002-00137_00002" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5853658536585366, + "matched_token_number" : 72 + }, + "00142_00001-00196_00001" : { + "minimal_similarity" : 0.17981072555205047, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00130_00002-00140_00001" : { + "minimal_similarity" : 0.9540229885057471, + "maximum_similarity" : 0.9540229885057471, + "matched_token_number" : 83 + }, + "00195_00002-00201_00001" : { + "minimal_similarity" : 0.3389830508474576, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00130_00002-00160_00001" : { + "minimal_similarity" : 0.4117647058823529, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00031_00003-00156_00002" : { + "minimal_similarity" : 0.3382352941176471, + "maximum_similarity" : 0.5411764705882353, + "matched_token_number" : 46 + }, + "00031_00003-00156_00003" : { + "minimal_similarity" : 0.3382352941176471, + "maximum_similarity" : 0.5411764705882353, + "matched_token_number" : 46 + }, + "00160_00001-00186_00004" : { + "minimal_similarity" : 0.47794117647058826, + "maximum_similarity" : 0.6132075471698113, + "matched_token_number" : 65 + }, + "00184_00003-00193_00001" : { + "minimal_similarity" : 0.42857142857142855, + "maximum_similarity" : 0.6063829787234043, + "matched_token_number" : 57 + }, + "00031_00002-00136_00002" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.782608695652174, + "matched_token_number" : 72 + }, + "00160_00001-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.4852941176470588, + "matched_token_number" : 66 + }, + "00133_00001-00193_00001" : { + "minimal_similarity" : 0.5488721804511278, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00120_00001-00183_00004" : { + "minimal_similarity" : 0.3404255319148936, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00184_00003-00203_00002" : { + "minimal_similarity" : 0.45255474452554745, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 62 + }, + "00155_00001-00187_00001" : { + "minimal_similarity" : 0.42424242424242425, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00031_00002-00077_00001" : { + "minimal_similarity" : 0.35, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00095_00003-00187_00001" : { + "minimal_similarity" : 0.37209302325581395, + "maximum_similarity" : 0.48484848484848486, + "matched_token_number" : 64 + }, + "00140_00001-00192_00001" : { + "minimal_similarity" : 0.36774193548387096, + "maximum_similarity" : 0.6551724137931034, + "matched_token_number" : 57 + }, + "00140_00001-00192_00002" : { + "minimal_similarity" : 0.4198473282442748, + "maximum_similarity" : 0.632183908045977, + "matched_token_number" : 55 + }, + "00092_00001-00097_00002" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00156_00002-00203_00002" : { + "minimal_similarity" : 0.5109489051094891, + "maximum_similarity" : 0.5147058823529411, + "matched_token_number" : 70 + }, + "00095_00003-00154_00002" : { + "minimal_similarity" : 0.36046511627906974, + "maximum_similarity" : 0.5210084033613446, + "matched_token_number" : 62 + }, + "00147_00001-00183_00004" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.4576271186440678, + "matched_token_number" : 54 + }, + "00120_00001-00136_00002" : { + "minimal_similarity" : 0.2722222222222222, + "maximum_similarity" : 0.4152542372881356, + "matched_token_number" : 49 + }, + "00133_00001-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00133_00001-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00130_00002-00147_00001" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00000_00003-00201_00001" : { + "minimal_similarity" : 0.2773109243697479, + "maximum_similarity" : 0.3793103448275862, + "matched_token_number" : 33 + }, + "00135_00001-00140_00001" : { + "minimal_similarity" : 0.4041095890410959, + "maximum_similarity" : 0.6781609195402298, + "matched_token_number" : 59 + }, + "00013_00002-00031_00003" : { + "minimal_similarity" : 0.6105263157894737, + "maximum_similarity" : 0.6823529411764706, + "matched_token_number" : 58 + }, + "00130_00002-00193_00001" : { + "minimal_similarity" : 0.41353383458646614, + "maximum_similarity" : 0.632183908045977, + "matched_token_number" : 55 + }, + "00013_00002-00031_00002" : { + "minimal_similarity" : 0.5894736842105263, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00005_00002-00142_00001" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00142_00001-00201_00001" : { + "minimal_similarity" : 0.3389830508474576, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00134_00001-00202_00002" : { + "minimal_similarity" : 0.3262411347517731, + "maximum_similarity" : 0.5679012345679012, + "matched_token_number" : 46 + }, + "00134_00001-00202_00003" : { + "minimal_similarity" : 0.3333333333333333, + "maximum_similarity" : 0.5802469135802469, + "matched_token_number" : 47 + }, + "00153_00001-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00000_00003-00177_00003" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00153_00001-00186_00004" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00135_00001-00199_00001" : { + "minimal_similarity" : 0.4452054794520548, + "maximum_similarity" : 0.6842105263157895, + "matched_token_number" : 65 + }, + "00014_00001-00121_00001" : { + "minimal_similarity" : 0.49264705882352944, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00154_00002-00178_00002" : { + "minimal_similarity" : 0.8780487804878049, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00135_00001-00204_00001" : { + "minimal_similarity" : 0.4863013698630137, + "maximum_similarity" : 0.5916666666666667, + "matched_token_number" : 71 + }, + "00013_00002-00200_00002" : { + "minimal_similarity" : 0.3953488372093023, + "maximum_similarity" : 0.5368421052631579, + "matched_token_number" : 51 + }, + "00000_00003-00200_00002" : { + "minimal_similarity" : 0.4728682170542636, + "maximum_similarity" : 0.5126050420168067, + "matched_token_number" : 61 + }, + "00013_00002-00195_00002" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5052631578947369, + "matched_token_number" : 48 + }, + "00013_00002-00195_00001" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5052631578947369, + "matched_token_number" : 48 + }, + "00120_00001-00131_00005" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00142_00001-00145_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00120_00001-00134_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.691358024691358, + "matched_token_number" : 56 + }, + "00077_00001-00183_00004" : { + "minimal_similarity" : 0.44375, + "maximum_similarity" : 0.5035460992907801, + "matched_token_number" : 71 + }, + "00120_00001-00187_00001" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00142_00001-00198_00001" : { + "minimal_similarity" : 0.3881578947368421, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00130_00002-00142_00001" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00133_00001-00177_00003" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00134_00001-00141_00002" : { + "minimal_similarity" : 0.4722222222222222, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 51 + }, + "00156_00002-00192_00002" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5190839694656488, + "matched_token_number" : 68 + }, + "00156_00002-00192_00001" : { + "minimal_similarity" : 0.432258064516129, + "maximum_similarity" : 0.49264705882352944, + "matched_token_number" : 67 + }, + "00129_00008-00155_00001" : { + "minimal_similarity" : 0.22127659574468084, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00000_00003-00031_00002" : { + "minimal_similarity" : 0.44537815126050423, + "maximum_similarity" : 0.5760869565217391, + "matched_token_number" : 53 + }, + "00000_00003-00031_00003" : { + "minimal_similarity" : 0.4369747899159664, + "maximum_similarity" : 0.611764705882353, + "matched_token_number" : 52 + }, + "00147_00001-00184_00002" : { + "minimal_similarity" : 0.3983050847457627, + "maximum_similarity" : 0.5, + "matched_token_number" : 47 + }, + "00147_00001-00184_00003" : { + "minimal_similarity" : 0.3983050847457627, + "maximum_similarity" : 0.5, + "matched_token_number" : 47 + }, + "00156_00002-00195_00002" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00134_00001-00194_00001" : { + "minimal_similarity" : 0.4722222222222222, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 51 + }, + "00156_00002-00195_00001" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00095_00003-00138_00001" : { + "minimal_similarity" : 0.4127906976744186, + "maximum_similarity" : 0.6016949152542372, + "matched_token_number" : 71 + }, + "00013_00002-00203_00002" : { + "minimal_similarity" : 0.46715328467153283, + "maximum_similarity" : 0.6736842105263158, + "matched_token_number" : 64 + }, + "00005_00002-00126_00002" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00200_00002-00201_00001" : { + "minimal_similarity" : 0.35658914728682173, + "maximum_similarity" : 0.5287356321839081, + "matched_token_number" : 46 + }, + "00005_00002-00129_00008" : { + "minimal_similarity" : 0.3021276595744681, + "maximum_similarity" : 0.44375, + "matched_token_number" : 71 + }, + "00135_00001-00194_00001" : { + "minimal_similarity" : 0.4589041095890411, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00119_00001-00121_00001" : { + "minimal_similarity" : 0.49264705882352944, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00137_00002-00138_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00135_00001-00201_00001" : { + "minimal_similarity" : 0.3150684931506849, + "maximum_similarity" : 0.5287356321839081, + "matched_token_number" : 46 + }, + "00092_00001-00095_00003" : { + "minimal_similarity" : 0.4127906976744186, + "maximum_similarity" : 0.6016949152542372, + "matched_token_number" : 71 + }, + "00000_00005-00097_00002" : { + "minimal_similarity" : 0.36666666666666664, + "maximum_similarity" : 0.41509433962264153, + "matched_token_number" : 44 + }, + "00031_00003-00121_00001" : { + "minimal_similarity" : 0.4117647058823529, + "maximum_similarity" : 0.6588235294117647, + "matched_token_number" : 56 + }, + "00130_00002-00198_00001" : { + "minimal_similarity" : 0.3026315789473684, + "maximum_similarity" : 0.5287356321839081, + "matched_token_number" : 46 + }, + "00121_00001-00187_00001" : { + "minimal_similarity" : 0.5514705882352942, + "maximum_similarity" : 0.5681818181818182, + "matched_token_number" : 75 + }, + "00013_00002-00202_00003" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.631578947368421, + "matched_token_number" : 60 + }, + "00135_00001-00202_00002" : { + "minimal_similarity" : 0.4726027397260274, + "maximum_similarity" : 0.48936170212765956, + "matched_token_number" : 69 + }, + "00142_00001-00147_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00141_00002-00183_00004" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.5555555555555556, + "matched_token_number" : 60 + }, + "00147_00001-00186_00002" : { + "minimal_similarity" : 0.3695652173913043, + "maximum_similarity" : 0.4322033898305085, + "matched_token_number" : 51 + }, + "00147_00001-00186_00004" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00000_00005-00156_00002" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.39166666666666666, + "matched_token_number" : 47 + }, + "00000_00005-00156_00003" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.39166666666666666, + "matched_token_number" : 47 + }, + "00044_00002-00125_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00121_00001-00136_00002" : { + "minimal_similarity" : 0.46111111111111114, + "maximum_similarity" : 0.6102941176470589, + "matched_token_number" : 83 + }, + "00000_00001-00111_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00077_00001-00186_00002" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.4782608695652174, + "matched_token_number" : 66 + }, + "00134_00001-00192_00001" : { + "minimal_similarity" : 0.36129032258064514, + "maximum_similarity" : 0.691358024691358, + "matched_token_number" : 56 + }, + "00134_00001-00192_00002" : { + "minimal_similarity" : 0.3893129770992366, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 51 + }, + "00156_00002-00200_00002" : { + "minimal_similarity" : 0.4117647058823529, + "maximum_similarity" : 0.43410852713178294, + "matched_token_number" : 56 + }, + "00135_00001-00196_00001" : { + "minimal_similarity" : 0.2586750788643533, + "maximum_similarity" : 0.5616438356164384, + "matched_token_number" : 82 + }, + "00077_00001-00186_00004" : { + "minimal_similarity" : 0.39375, + "maximum_similarity" : 0.5943396226415094, + "matched_token_number" : 63 + }, + "00130_00002-00145_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00135_00001-00202_00003" : { + "minimal_similarity" : 0.4657534246575342, + "maximum_similarity" : 0.48226950354609927, + "matched_token_number" : 68 + }, + "00031_00002-00131_00005" : { + "minimal_similarity" : 0.35, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00130_00002-00203_00002" : { + "minimal_similarity" : 0.38686131386861317, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00130_00002-00196_00001" : { + "minimal_similarity" : 0.10725552050473186, + "maximum_similarity" : 0.39080459770114945, + "matched_token_number" : 34 + }, + "00200_00002-00202_00003" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5116279069767442, + "matched_token_number" : 66 + }, + "00013_00002-00202_00002" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00077_00001-00134_00001" : { + "minimal_similarity" : 0.33125, + "maximum_similarity" : 0.654320987654321, + "matched_token_number" : 53 + }, + "00142_00001-00204_00001" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.4745762711864407, + "matched_token_number" : 56 + }, + "00119_00001-00178_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00130_00002-00136_00002" : { + "minimal_similarity" : 0.29444444444444445, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00129_00008-00156_00003" : { + "minimal_similarity" : 0.3276595744680851, + "maximum_similarity" : 0.5661764705882353, + "matched_token_number" : 77 + }, + "00005_00002-00178_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00129_00008-00156_00002" : { + "minimal_similarity" : 0.3276595744680851, + "maximum_similarity" : 0.5661764705882353, + "matched_token_number" : 77 + }, + "00113_00002-00194_00001" : { + "minimal_similarity" : 0.5819672131147541, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00119_00001-00203_00002" : { + "minimal_similarity" : 0.48905109489051096, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00044_00002-00092_00001" : { + "minimal_similarity" : 0.3813559322033898, + "maximum_similarity" : 0.45454545454545453, + "matched_token_number" : 45 + }, + "00184_00002-00196_00001" : { + "minimal_similarity" : 0.1608832807570978, + "maximum_similarity" : 0.5425531914893617, + "matched_token_number" : 51 + }, + "00138_00001-00187_00001" : { + "minimal_similarity" : 0.48484848484848486, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00137_00002-00147_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00125_00001-00177_00003" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00131_00005-00201_00001" : { + "minimal_similarity" : 0.24375, + "maximum_similarity" : 0.4482758620689655, + "matched_token_number" : 39 + }, + "00196_00001-00204_00001" : { + "minimal_similarity" : 0.19873817034700317, + "maximum_similarity" : 0.525, + "matched_token_number" : 63 + }, + "00135_00001-00155_00001" : { + "minimal_similarity" : 0.3972602739726027, + "maximum_similarity" : 0.6666666666666666, + "matched_token_number" : 58 + }, + "00000_00003-00141_00002" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5462962962962963, + "matched_token_number" : 59 + }, + "00031_00003-00120_00001" : { + "minimal_similarity" : 0.3728813559322034, + "maximum_similarity" : 0.5176470588235295, + "matched_token_number" : 44 + }, + "00120_00001-00140_00001" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00014_00001-00183_00004" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.5555555555555556, + "matched_token_number" : 60 + }, + "00147_00001-00192_00001" : { + "minimal_similarity" : 0.38064516129032255, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00031_00003-00133_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00147_00001-00192_00002" : { + "minimal_similarity" : 0.44274809160305345, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00154_00002-00177_00003" : { + "minimal_similarity" : 0.8780487804878049, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00000_00001-00141_00002" : { + "minimal_similarity" : 0.5277777777777778, + "maximum_similarity" : 0.5816326530612245, + "matched_token_number" : 57 + }, + "00031_00002-00133_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00178_00002-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00178_00002-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00013_00002-00177_00003" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00005_00002-00160_00001" : { + "minimal_similarity" : 0.4125, + "maximum_similarity" : 0.4852941176470588, + "matched_token_number" : 66 + }, + "00014_00001-00111_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00127_00002-00130_00002" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00077_00001-00119_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00000_00003-00120_00001" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00013_00002-00130_00002" : { + "minimal_similarity" : 0.47368421052631576, + "maximum_similarity" : 0.5172413793103449, + "matched_token_number" : 45 + }, + "00000_00002-00120_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00044_00002-00097_00002" : { + "minimal_similarity" : 0.3584905660377358, + "maximum_similarity" : 0.3838383838383838, + "matched_token_number" : 38 + }, + "00111_00001-00135_00001" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6260162601626016, + "matched_token_number" : 77 + }, + "00000_00005-00120_00001" : { + "minimal_similarity" : 0.49166666666666664, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00130_00002-00131_00005" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00145_00001-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00135_00001-00147_00001" : { + "minimal_similarity" : 0.4452054794520548, + "maximum_similarity" : 0.5508474576271186, + "matched_token_number" : 65 + }, + "00097_00002-00142_00001" : { + "minimal_similarity" : 0.4576271186440678, + "maximum_similarity" : 0.5094339622641509, + "matched_token_number" : 54 + }, + "00000_00003-00095_00003" : { + "minimal_similarity" : 0.3023255813953488, + "maximum_similarity" : 0.4369747899159664, + "matched_token_number" : 52 + }, + "00127_00002-00177_00003" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00113_00002-00199_00001" : { + "minimal_similarity" : 0.5163934426229508, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00031_00003-00192_00002" : { + "minimal_similarity" : 0.45038167938931295, + "maximum_similarity" : 0.6941176470588235, + "matched_token_number" : 59 + }, + "00192_00002-00195_00002" : { + "minimal_similarity" : 0.4580152671755725, + "maximum_similarity" : 0.5084745762711864, + "matched_token_number" : 60 + }, + "00145_00001-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00031_00003-00192_00001" : { + "minimal_similarity" : 0.32903225806451614, + "maximum_similarity" : 0.6, + "matched_token_number" : 51 + }, + "00000_00002-00095_00003" : { + "minimal_similarity" : 0.29651162790697677, + "maximum_similarity" : 0.4434782608695652, + "matched_token_number" : 51 + }, + "00154_00002-00156_00002" : { + "minimal_similarity" : 0.41911764705882354, + "maximum_similarity" : 0.4789915966386555, + "matched_token_number" : 57 + }, + "00192_00002-00195_00001" : { + "minimal_similarity" : 0.4580152671755725, + "maximum_similarity" : 0.5084745762711864, + "matched_token_number" : 60 + }, + "00005_00002-00199_00001" : { + "minimal_similarity" : 0.41875, + "maximum_similarity" : 0.7052631578947368, + "matched_token_number" : 67 + }, + "00154_00002-00156_00003" : { + "minimal_similarity" : 0.41911764705882354, + "maximum_similarity" : 0.4789915966386555, + "matched_token_number" : 57 + }, + "00000_00005-00031_00002" : { + "minimal_similarity" : 0.4083333333333333, + "maximum_similarity" : 0.532608695652174, + "matched_token_number" : 49 + }, + "00000_00005-00031_00003" : { + "minimal_similarity" : 0.39166666666666666, + "maximum_similarity" : 0.5529411764705883, + "matched_token_number" : 47 + }, + "00156_00002-00202_00002" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5, + "matched_token_number" : 68 + }, + "00120_00001-00137_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00097_00002-00201_00001" : { + "minimal_similarity" : 0.3113207547169811, + "maximum_similarity" : 0.3793103448275862, + "matched_token_number" : 33 + }, + "00092_00001-00178_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00133_00001-00147_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00156_00002-00202_00003" : { + "minimal_similarity" : 0.46099290780141844, + "maximum_similarity" : 0.47794117647058826, + "matched_token_number" : 65 + }, + "00156_00003-00202_00002" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5, + "matched_token_number" : 68 + }, + "00156_00003-00202_00003" : { + "minimal_similarity" : 0.46099290780141844, + "maximum_similarity" : 0.47794117647058826, + "matched_token_number" : 65 + }, + "00000_00005-00044_00002" : { + "minimal_similarity" : 0.475, + "maximum_similarity" : 0.5757575757575758, + "matched_token_number" : 57 + }, + "00000_00002-00154_00002" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00044_00002-00156_00002" : { + "minimal_similarity" : 0.3161764705882353, + "maximum_similarity" : 0.43434343434343436, + "matched_token_number" : 43 + }, + "00126_00002-00145_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00000_00003-00154_00002" : { + "minimal_similarity" : 0.47058823529411764, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00044_00002-00156_00003" : { + "minimal_similarity" : 0.3161764705882353, + "maximum_similarity" : 0.43434343434343436, + "matched_token_number" : 43 + }, + "00154_00002-00202_00002" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5714285714285714, + "matched_token_number" : 68 + }, + "00113_00002-00135_00001" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6311475409836066, + "matched_token_number" : 77 + }, + "00154_00002-00202_00003" : { + "minimal_similarity" : 0.44680851063829785, + "maximum_similarity" : 0.5294117647058824, + "matched_token_number" : 63 + }, + "00137_00002-00142_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00000_00001-00044_00002" : { + "minimal_similarity" : 0.5353535353535354, + "maximum_similarity" : 0.5408163265306123, + "matched_token_number" : 53 + }, + "00198_00001-00204_00001" : { + "minimal_similarity" : 0.5789473684210527, + "maximum_similarity" : 0.7333333333333333, + "matched_token_number" : 88 + }, + "00178_00002-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00142_00001-00194_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00129_00008-00177_00003" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6097560975609756, + "matched_token_number" : 75 + }, + "00156_00002-00156_00003" : { + "minimal_similarity" : 0.9264705882352942, + "maximum_similarity" : 0.9264705882352942, + "matched_token_number" : 126 + }, + "00186_00002-00196_00001" : { + "minimal_similarity" : 0.1608832807570978, + "maximum_similarity" : 0.3695652173913043, + "matched_token_number" : 51 + }, + "00000_00005-00125_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00095_00003-00192_00002" : { + "minimal_similarity" : 0.4069767441860465, + "maximum_similarity" : 0.5343511450381679, + "matched_token_number" : 70 + }, + "00000_00003-00125_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00044_00002-00202_00003" : { + "minimal_similarity" : 0.49645390070921985, + "maximum_similarity" : 0.7070707070707071, + "matched_token_number" : 70 + }, + "00013_00002-00135_00001" : { + "minimal_similarity" : 0.4520547945205479, + "maximum_similarity" : 0.6947368421052632, + "matched_token_number" : 66 + }, + "00044_00002-00202_00002" : { + "minimal_similarity" : 0.49645390070921985, + "maximum_similarity" : 0.7070707070707071, + "matched_token_number" : 70 + }, + "00111_00001-00130_00002" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00005_00002-00194_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00095_00003-00155_00001" : { + "minimal_similarity" : 0.29069767441860467, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00160_00001-00197_00001" : { + "minimal_similarity" : 0.625, + "maximum_similarity" : 0.6439393939393939, + "matched_token_number" : 85 + }, + "00000_00001-00138_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5714285714285714, + "matched_token_number" : 56 + }, + "00195_00002-00198_00001" : { + "minimal_similarity" : 0.3881578947368421, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00014_00001-00145_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00095_00003-00192_00001" : { + "minimal_similarity" : 0.4011627906976744, + "maximum_similarity" : 0.44516129032258067, + "matched_token_number" : 69 + }, + "00077_00001-00203_00002" : { + "minimal_similarity" : 0.48125, + "maximum_similarity" : 0.5620437956204379, + "matched_token_number" : 77 + }, + "00000_00002-00031_00003" : { + "minimal_similarity" : 0.45217391304347826, + "maximum_similarity" : 0.611764705882353, + "matched_token_number" : 52 + }, + "00138_00001-00153_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00197_00001-00202_00003" : { + "minimal_similarity" : 0.8368794326241135, + "maximum_similarity" : 0.8939393939393939, + "matched_token_number" : 118 + }, + "00131_00005-00147_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.6186440677966102, + "matched_token_number" : 73 + }, + "00134_00001-00204_00001" : { + "minimal_similarity" : 0.35, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 42 + }, + "00113_00002-00130_00002" : { + "minimal_similarity" : 0.5655737704918032, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00136_00002-00204_00001" : { + "minimal_similarity" : 0.35555555555555557, + "maximum_similarity" : 0.5333333333333333, + "matched_token_number" : 64 + }, + "00187_00001-00202_00002" : { + "minimal_similarity" : 0.8156028368794326, + "maximum_similarity" : 0.8712121212121212, + "matched_token_number" : 115 + }, + "00000_00002-00031_00002" : { + "minimal_similarity" : 0.43478260869565216, + "maximum_similarity" : 0.5434782608695652, + "matched_token_number" : 50 + }, + "00187_00001-00202_00003" : { + "minimal_similarity" : 0.8368794326241135, + "maximum_similarity" : 0.8939393939393939, + "matched_token_number" : 118 + }, + "00197_00001-00202_00002" : { + "minimal_similarity" : 0.8156028368794326, + "maximum_similarity" : 0.8712121212121212, + "matched_token_number" : 115 + }, + "00121_00001-00147_00001" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00005-00138_00001" : { + "minimal_similarity" : 0.38333333333333336, + "maximum_similarity" : 0.3898305084745763, + "matched_token_number" : 46 + }, + "00130_00002-00178_00002" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00153_00001-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.43902439024390244, + "matched_token_number" : 54 + }, + "00005_00002-00013_00002" : { + "minimal_similarity" : 0.34375, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00000_00002-00192_00002" : { + "minimal_similarity" : 0.4122137404580153, + "maximum_similarity" : 0.46956521739130436, + "matched_token_number" : 54 + }, + "00000_00002-00192_00001" : { + "minimal_similarity" : 0.3548387096774194, + "maximum_similarity" : 0.4782608695652174, + "matched_token_number" : 55 + }, + "00031_00002-00141_00002" : { + "minimal_similarity" : 0.5185185185185185, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00129_00008-00202_00002" : { + "minimal_similarity" : 0.39574468085106385, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 93 + }, + "00127_00002-00135_00001" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6260162601626016, + "matched_token_number" : 77 + }, + "00129_00008-00202_00003" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.6382978723404256, + "matched_token_number" : 90 + }, + "00145_00001-00154_00002" : { + "minimal_similarity" : 0.8780487804878049, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00014_00001-00154_00002" : { + "minimal_similarity" : 0.5714285714285714, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 68 + }, + "00133_00001-00201_00001" : { + "minimal_similarity" : 0.3008130081300813, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00134_00001-00153_00001" : { + "minimal_similarity" : 0.4715447154471545, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00111_00001-00178_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00095_00003-00134_00001" : { + "minimal_similarity" : 0.27325581395348836, + "maximum_similarity" : 0.5802469135802469, + "matched_token_number" : 47 + }, + "00031_00002-00200_00002" : { + "minimal_similarity" : 0.43410852713178294, + "maximum_similarity" : 0.6086956521739131, + "matched_token_number" : 56 + }, + "00031_00003-00125_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00000_00002-00133_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00000_00005-00196_00001" : { + "minimal_similarity" : 0.1861198738170347, + "maximum_similarity" : 0.49166666666666664, + "matched_token_number" : 59 + }, + "00133_00001-00142_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00120_00001-00204_00001" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.4745762711864407, + "matched_token_number" : 56 + }, + "00194_00001-00204_00001" : { + "minimal_similarity" : 0.475, + "maximum_similarity" : 0.5277777777777778, + "matched_token_number" : 57 + }, + "00113_00002-00127_00002" : { + "minimal_similarity" : 0.943089430894309, + "maximum_similarity" : 0.9508196721311475, + "matched_token_number" : 116 + }, + "00113_00002-00160_00001" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.680327868852459, + "matched_token_number" : 83 + }, + "00142_00001-00186_00002" : { + "minimal_similarity" : 0.3695652173913043, + "maximum_similarity" : 0.4322033898305085, + "matched_token_number" : 51 + }, + "00095_00003-00133_00001" : { + "minimal_similarity" : 0.42441860465116277, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00031_00002-00138_00001" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5217391304347826, + "matched_token_number" : 48 + }, + "00120_00001-00145_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00000_00005-00197_00001" : { + "minimal_similarity" : 0.44696969696969696, + "maximum_similarity" : 0.49166666666666664, + "matched_token_number" : 59 + }, + "00147_00001-00197_00001" : { + "minimal_similarity" : 0.48484848484848486, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00014_00001-00153_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00142_00001-00186_00004" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00145_00001-00184_00002" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00111_00001-00177_00003" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00097_00002-00134_00001" : { + "minimal_similarity" : 0.46226415094339623, + "maximum_similarity" : 0.6049382716049383, + "matched_token_number" : 49 + }, + "00193_00001-00201_00001" : { + "minimal_similarity" : 0.2857142857142857, + "maximum_similarity" : 0.4367816091954023, + "matched_token_number" : 38 + }, + "00140_00001-00203_00002" : { + "minimal_similarity" : 0.38686131386861317, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00125_00001-00156_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00125_00001-00156_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00092_00001-00186_00002" : { + "minimal_similarity" : 0.3695652173913043, + "maximum_similarity" : 0.4322033898305085, + "matched_token_number" : 51 + }, + "00121_00001-00177_00003" : { + "minimal_similarity" : 0.6985294117647058, + "maximum_similarity" : 0.7723577235772358, + "matched_token_number" : 95 + }, + "00092_00001-00186_00004" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00031_00002-00201_00001" : { + "minimal_similarity" : 0.25, + "maximum_similarity" : 0.26436781609195403, + "matched_token_number" : 23 + }, + "00031_00003-00044_00002" : { + "minimal_similarity" : 0.5050505050505051, + "maximum_similarity" : 0.5882352941176471, + "matched_token_number" : 50 + }, + "00119_00001-00186_00002" : { + "minimal_similarity" : 0.39855072463768115, + "maximum_similarity" : 0.5092592592592593, + "matched_token_number" : 55 + }, + "00141_00002-00200_00002" : { + "minimal_similarity" : 0.5193798449612403, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00119_00001-00186_00004" : { + "minimal_similarity" : 0.49074074074074076, + "maximum_similarity" : 0.5, + "matched_token_number" : 53 + }, + "00177_00003-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6422764227642277, + "matched_token_number" : 79 + }, + "00135_00001-00184_00002" : { + "minimal_similarity" : 0.4246575342465753, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 62 + }, + "00145_00001-00184_00003" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00135_00001-00184_00003" : { + "minimal_similarity" : 0.4246575342465753, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 62 + }, + "00147_00001-00155_00001" : { + "minimal_similarity" : 0.3220338983050847, + "maximum_similarity" : 0.4367816091954023, + "matched_token_number" : 38 + }, + "00153_00001-00154_00002" : { + "minimal_similarity" : 0.8780487804878049, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00126_00002-00141_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00131_00005-00133_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00129_00008-00186_00004" : { + "minimal_similarity" : 0.22127659574468084, + "maximum_similarity" : 0.49056603773584906, + "matched_token_number" : 52 + }, + "00129_00008-00186_00002" : { + "minimal_similarity" : 0.32340425531914896, + "maximum_similarity" : 0.5507246376811594, + "matched_token_number" : 76 + }, + "00125_00001-00147_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00137_00002-00177_00003" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00193_00001-00202_00003" : { + "minimal_similarity" : 0.5886524822695035, + "maximum_similarity" : 0.6240601503759399, + "matched_token_number" : 83 + }, + "00197_00001-00201_00001" : { + "minimal_similarity" : 0.29545454545454547, + "maximum_similarity" : 0.4482758620689655, + "matched_token_number" : 39 + }, + "00193_00001-00202_00002" : { + "minimal_similarity" : 0.5531914893617021, + "maximum_similarity" : 0.5864661654135338, + "matched_token_number" : 78 + }, + "00000_00005-00129_00008" : { + "minimal_similarity" : 0.28085106382978725, + "maximum_similarity" : 0.55, + "matched_token_number" : 66 + }, + "00137_00002-00184_00003" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00031_00003-00196_00001" : { + "minimal_similarity" : 0.10725552050473186, + "maximum_similarity" : 0.4, + "matched_token_number" : 34 + }, + "00160_00001-00198_00001" : { + "minimal_similarity" : 0.48026315789473684, + "maximum_similarity" : 0.5367647058823529, + "matched_token_number" : 73 + }, + "00137_00002-00184_00002" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00095_00003-00120_00001" : { + "minimal_similarity" : 0.36046511627906974, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00126_00002-00204_00001" : { + "minimal_similarity" : 0.4666666666666667, + "maximum_similarity" : 0.4745762711864407, + "matched_token_number" : 56 + }, + "00195_00002-00197_00001" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00113_00002-00136_00002" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5901639344262295, + "matched_token_number" : 72 + }, + "00095_00003-00126_00002" : { + "minimal_similarity" : 0.36046511627906974, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00111_00001-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00014_00001-00204_00001" : { + "minimal_similarity" : 0.475, + "maximum_similarity" : 0.5277777777777778, + "matched_token_number" : 57 + }, + "00111_00001-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00131_00005-00138_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.6186440677966102, + "matched_token_number" : 73 + }, + "00031_00003-00129_00008" : { + "minimal_similarity" : 0.2, + "maximum_similarity" : 0.5529411764705883, + "matched_token_number" : 47 + }, + "00125_00001-00142_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00127_00002-00147_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00005-00137_00002" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00156_00003-00203_00002" : { + "minimal_similarity" : 0.5109489051094891, + "maximum_similarity" : 0.5147058823529411, + "matched_token_number" : 70 + }, + "00111_00001-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6422764227642277, + "matched_token_number" : 79 + }, + "00129_00008-00178_00002" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.6097560975609756, + "matched_token_number" : 75 + }, + "00097_00002-00138_00001" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00131_00005-00134_00001" : { + "minimal_similarity" : 0.33125, + "maximum_similarity" : 0.654320987654321, + "matched_token_number" : 53 + }, + "00000_00001-00201_00001" : { + "minimal_similarity" : 0.2653061224489796, + "maximum_similarity" : 0.2988505747126437, + "matched_token_number" : 26 + }, + "00044_00002-00203_00002" : { + "minimal_similarity" : 0.5036496350364964, + "maximum_similarity" : 0.696969696969697, + "matched_token_number" : 69 + }, + "00095_00003-00125_00001" : { + "minimal_similarity" : 0.42441860465116277, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00147_00001-00154_00002" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00113_00002-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5409836065573771, + "matched_token_number" : 66 + }, + "00127_00002-00142_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00199_00001-00201_00001" : { + "minimal_similarity" : 0.3473684210526316, + "maximum_similarity" : 0.3793103448275862, + "matched_token_number" : 33 + }, + "00141_00002-00145_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00126_00002-00133_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00154_00002-00155_00001" : { + "minimal_similarity" : 0.5378151260504201, + "maximum_similarity" : 0.735632183908046, + "matched_token_number" : 64 + }, + "00031_00002-00111_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00000_00001-00137_00002" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00097_00002-00202_00003" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.5094339622641509, + "matched_token_number" : 54 + }, + "00145_00001-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00097_00002-00202_00002" : { + "minimal_similarity" : 0.375886524822695, + "maximum_similarity" : 0.5, + "matched_token_number" : 53 + }, + "00000_00003-00155_00001" : { + "minimal_similarity" : 0.3865546218487395, + "maximum_similarity" : 0.5287356321839081, + "matched_token_number" : 46 + }, + "00126_00002-00138_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00097_00002-00147_00001" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.4716981132075472, + "matched_token_number" : 50 + }, + "00154_00002-00203_00002" : { + "minimal_similarity" : 0.5255474452554745, + "maximum_similarity" : 0.6050420168067226, + "matched_token_number" : 72 + }, + "00000_00002-00125_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00044_00002-00147_00001" : { + "minimal_similarity" : 0.3813559322033898, + "maximum_similarity" : 0.45454545454545453, + "matched_token_number" : 45 + }, + "00031_00003-00137_00002" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.6352941176470588, + "matched_token_number" : 54 + }, + "00031_00003-00197_00001" : { + "minimal_similarity" : 0.4166666666666667, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 55 + }, + "00031_00002-00147_00001" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5217391304347826, + "matched_token_number" : 48 + }, + "00000_00001-00200_00002" : { + "minimal_similarity" : 0.4728682170542636, + "maximum_similarity" : 0.6224489795918368, + "matched_token_number" : 61 + }, + "00126_00002-00200_00002" : { + "minimal_similarity" : 0.4263565891472868, + "maximum_similarity" : 0.4661016949152542, + "matched_token_number" : 55 + }, + "00133_00001-00154_00002" : { + "minimal_similarity" : 0.8780487804878049, + "maximum_similarity" : 0.907563025210084, + "matched_token_number" : 108 + }, + "00199_00001-00202_00002" : { + "minimal_similarity" : 0.44680851063829785, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00131_00005-00202_00003" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 84 + }, + "00199_00001-00202_00003" : { + "minimal_similarity" : 0.4397163120567376, + "maximum_similarity" : 0.6526315789473685, + "matched_token_number" : 62 + }, + "00125_00001-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6422764227642277, + "matched_token_number" : 79 + }, + "00014_00001-00200_00002" : { + "minimal_similarity" : 0.5193798449612403, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00077_00001-00113_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6885245901639344, + "matched_token_number" : 84 + }, + "00000_00005-00192_00001" : { + "minimal_similarity" : 0.3741935483870968, + "maximum_similarity" : 0.48333333333333334, + "matched_token_number" : 58 + }, + "00111_00001-00136_00002" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5853658536585366, + "matched_token_number" : 72 + }, + "00000_00005-00192_00002" : { + "minimal_similarity" : 0.44274809160305345, + "maximum_similarity" : 0.48333333333333334, + "matched_token_number" : 58 + }, + "00183_00004-00203_00002" : { + "minimal_similarity" : 0.5886524822695035, + "maximum_similarity" : 0.6058394160583942, + "matched_token_number" : 83 + }, + "00131_00005-00202_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 84 + }, + "00126_00002-00140_00001" : { + "minimal_similarity" : 0.4406779661016949, + "maximum_similarity" : 0.5977011494252874, + "matched_token_number" : 52 + }, + "00138_00001-00196_00001" : { + "minimal_similarity" : 0.14826498422712933, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00125_00001-00201_00001" : { + "minimal_similarity" : 0.3008130081300813, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00113_00002-00193_00001" : { + "minimal_similarity" : 0.5413533834586466, + "maximum_similarity" : 0.5901639344262295, + "matched_token_number" : 72 + }, + "00186_00002-00192_00001" : { + "minimal_similarity" : 0.5806451612903226, + "maximum_similarity" : 0.6521739130434783, + "matched_token_number" : 90 + }, + "00000_00001-00140_00001" : { + "minimal_similarity" : 0.5204081632653061, + "maximum_similarity" : 0.5862068965517241, + "matched_token_number" : 51 + }, + "00133_00001-00156_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00186_00002-00192_00002" : { + "minimal_similarity" : 0.5797101449275363, + "maximum_similarity" : 0.6106870229007634, + "matched_token_number" : 80 + }, + "00140_00001-00156_00003" : { + "minimal_similarity" : 0.36764705882352944, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00133_00001-00156_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00198_00001-00200_00002" : { + "minimal_similarity" : 0.4605263157894737, + "maximum_similarity" : 0.5426356589147286, + "matched_token_number" : 70 + }, + "00131_00005-00141_00002" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00183_00004-00202_00002" : { + "minimal_similarity" : 0.574468085106383, + "maximum_similarity" : 0.574468085106383, + "matched_token_number" : 81 + }, + "00127_00002-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00031_00002-00044_00002" : { + "minimal_similarity" : 0.5151515151515151, + "maximum_similarity" : 0.5543478260869565, + "matched_token_number" : 51 + }, + "00014_00001-00187_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6111111111111112, + "matched_token_number" : 66 + }, + "00140_00001-00156_00002" : { + "minimal_similarity" : 0.36764705882352944, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00183_00004-00202_00003" : { + "minimal_similarity" : 0.5602836879432624, + "maximum_similarity" : 0.5602836879432624, + "matched_token_number" : 79 + }, + "00127_00002-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00000_00005-00133_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.475, + "matched_token_number" : 57 + }, + "00192_00001-00203_00002" : { + "minimal_similarity" : 0.6903225806451613, + "maximum_similarity" : 0.781021897810219, + "matched_token_number" : 107 + }, + "00138_00001-00195_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00014_00001-00140_00001" : { + "minimal_similarity" : 0.46296296296296297, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00092_00001-00119_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00138_00001-00195_00002" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00126_00002-00137_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00000_00001-00133_00001" : { + "minimal_similarity" : 0.43902439024390244, + "maximum_similarity" : 0.5510204081632653, + "matched_token_number" : 54 + }, + "00113_00002-00195_00001" : { + "minimal_similarity" : 0.5737704918032787, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00119_00001-00204_00001" : { + "minimal_similarity" : 0.475, + "maximum_similarity" : 0.5277777777777778, + "matched_token_number" : 57 + }, + "00113_00002-00195_00002" : { + "minimal_similarity" : 0.5737704918032787, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00031_00003-00138_00001" : { + "minimal_similarity" : 0.4067796610169492, + "maximum_similarity" : 0.5647058823529412, + "matched_token_number" : 48 + }, + "00145_00001-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.43902439024390244, + "matched_token_number" : 54 + }, + "00000_00003-00111_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00000_00005-00134_00001" : { + "minimal_similarity" : 0.35, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 42 + }, + "00133_00001-00155_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00131_00005-00142_00001" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00095_00003-00121_00001" : { + "minimal_similarity" : 0.46511627906976744, + "maximum_similarity" : 0.5882352941176471, + "matched_token_number" : 80 + }, + "00125_00001-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00183_00004-00201_00001" : { + "minimal_similarity" : 0.3900709219858156, + "maximum_similarity" : 0.632183908045977, + "matched_token_number" : 55 + }, + "00125_00001-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00127_00002-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6422764227642277, + "matched_token_number" : 79 + }, + "00000_00001-00134_00001" : { + "minimal_similarity" : 0.4489795918367347, + "maximum_similarity" : 0.5432098765432098, + "matched_token_number" : 44 + }, + "00131_00005-00200_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6511627906976745, + "matched_token_number" : 84 + }, + "00126_00002-00136_00002" : { + "minimal_similarity" : 0.2722222222222222, + "maximum_similarity" : 0.4152542372881356, + "matched_token_number" : 49 + }, + "00192_00001-00204_00001" : { + "minimal_similarity" : 0.6258064516129033, + "maximum_similarity" : 0.8083333333333333, + "matched_token_number" : 97 + }, + "00014_00001-00141_00002" : { + "minimal_similarity" : 0.9722222222222222, + "maximum_similarity" : 0.9722222222222222, + "matched_token_number" : 105 + }, + "00138_00001-00194_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00129_00008-00201_00001" : { + "minimal_similarity" : 0.2170212765957447, + "maximum_similarity" : 0.5862068965517241, + "matched_token_number" : 51 + }, + "00121_00001-00178_00002" : { + "minimal_similarity" : 0.6985294117647058, + "maximum_similarity" : 0.7723577235772358, + "matched_token_number" : 95 + }, + "00077_00001-00147_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.6186440677966102, + "matched_token_number" : 73 + }, + "00147_00001-00198_00001" : { + "minimal_similarity" : 0.5131578947368421, + "maximum_similarity" : 0.6610169491525424, + "matched_token_number" : 78 + }, + "00092_00001-00111_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00092_00001-00202_00003" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00121_00001-00203_00002" : { + "minimal_similarity" : 0.5474452554744526, + "maximum_similarity" : 0.5514705882352942, + "matched_token_number" : 75 + }, + "00140_00001-00187_00001" : { + "minimal_similarity" : 0.44696969696969696, + "maximum_similarity" : 0.6781609195402298, + "matched_token_number" : 59 + }, + "00092_00001-00202_00002" : { + "minimal_similarity" : 0.40425531914893614, + "maximum_similarity" : 0.4830508474576271, + "matched_token_number" : 57 + }, + "00154_00002-00184_00002" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.6276595744680851, + "matched_token_number" : 59 + }, + "00154_00002-00184_00003" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.6276595744680851, + "matched_token_number" : 59 + }, + "00145_00001-00193_00001" : { + "minimal_similarity" : 0.5488721804511278, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00113_00002-00134_00001" : { + "minimal_similarity" : 0.47540983606557374, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00092_00001-00177_00003" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00031_00002-00140_00001" : { + "minimal_similarity" : 0.5543478260869565, + "maximum_similarity" : 0.5862068965517241, + "matched_token_number" : 51 + }, + "00153_00001-00197_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00013_00002-00131_00005" : { + "minimal_similarity" : 0.34375, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00127_00002-00201_00001" : { + "minimal_similarity" : 0.3008130081300813, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00142_00001-00153_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00120_00001-00178_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00095_00003-00129_00008" : { + "minimal_similarity" : 0.4808510638297872, + "maximum_similarity" : 0.6569767441860465, + "matched_token_number" : 113 + }, + "00141_00002-00147_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00000_00003-00187_00001" : { + "minimal_similarity" : 0.4090909090909091, + "maximum_similarity" : 0.453781512605042, + "matched_token_number" : 54 + }, + "00186_00004-00201_00001" : { + "minimal_similarity" : 0.3490566037735849, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00014_00001-00201_00001" : { + "minimal_similarity" : 0.37037037037037035, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00156_00003-00201_00001" : { + "minimal_similarity" : 0.375, + "maximum_similarity" : 0.5862068965517241, + "matched_token_number" : 51 + }, + "00077_00001-00142_00001" : { + "minimal_similarity" : 0.46875, + "maximum_similarity" : 0.635593220338983, + "matched_token_number" : 75 + }, + "00147_00001-00193_00001" : { + "minimal_similarity" : 0.45864661654135336, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00002-00193_00001" : { + "minimal_similarity" : 0.42857142857142855, + "maximum_similarity" : 0.4956521739130435, + "matched_token_number" : 57 + }, + "00014_00001-00184_00002" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00014_00001-00184_00003" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00192_00001-00200_00002" : { + "minimal_similarity" : 0.4838709677419355, + "maximum_similarity" : 0.5813953488372093, + "matched_token_number" : 75 + }, + "00097_00002-00200_00002" : { + "minimal_similarity" : 0.46511627906976744, + "maximum_similarity" : 0.5660377358490566, + "matched_token_number" : 60 + }, + "00000_00005-00193_00001" : { + "minimal_similarity" : 0.43609022556390975, + "maximum_similarity" : 0.48333333333333334, + "matched_token_number" : 58 + }, + "00134_00001-00183_00004" : { + "minimal_similarity" : 0.24822695035460993, + "maximum_similarity" : 0.43209876543209874, + "matched_token_number" : 35 + }, + "00156_00002-00184_00003" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.5531914893617021, + "matched_token_number" : 52 + }, + "00156_00002-00184_00002" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.5531914893617021, + "matched_token_number" : 52 + }, + "00031_00002-00145_00001" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00186_00002-00195_00001" : { + "minimal_similarity" : 0.3695652173913043, + "maximum_similarity" : 0.4322033898305085, + "matched_token_number" : 51 + }, + "00186_00002-00195_00002" : { + "minimal_similarity" : 0.3695652173913043, + "maximum_similarity" : 0.4322033898305085, + "matched_token_number" : 51 + }, + "00178_00002-00198_00001" : { + "minimal_similarity" : 0.4342105263157895, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00005_00002-00137_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00031_00003-00198_00001" : { + "minimal_similarity" : 0.3355263157894737, + "maximum_similarity" : 0.6, + "matched_token_number" : 51 + }, + "00000_00003-00113_00002" : { + "minimal_similarity" : 0.45901639344262296, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00187_00001-00201_00001" : { + "minimal_similarity" : 0.29545454545454547, + "maximum_similarity" : 0.4482758620689655, + "matched_token_number" : 39 + }, + "00000_00003-00153_00001" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.47058823529411764, + "matched_token_number" : 56 + }, + "00153_00001-00192_00002" : { + "minimal_similarity" : 0.5267175572519084, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00134_00001-00156_00002" : { + "minimal_similarity" : 0.3602941176470588, + "maximum_similarity" : 0.6049382716049383, + "matched_token_number" : 49 + }, + "00198_00001-00203_00002" : { + "minimal_similarity" : 0.5526315789473685, + "maximum_similarity" : 0.6131386861313869, + "matched_token_number" : 84 + }, + "00153_00001-00192_00001" : { + "minimal_similarity" : 0.44516129032258067, + "maximum_similarity" : 0.5609756097560976, + "matched_token_number" : 69 + }, + "00134_00001-00156_00003" : { + "minimal_similarity" : 0.3602941176470588, + "maximum_similarity" : 0.6049382716049383, + "matched_token_number" : 49 + }, + "00137_00002-00141_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00130_00002-00137_00002" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00141_00002-00204_00001" : { + "minimal_similarity" : 0.475, + "maximum_similarity" : 0.5277777777777778, + "matched_token_number" : 57 + }, + "00013_00002-00136_00002" : { + "minimal_similarity" : 0.3333333333333333, + "maximum_similarity" : 0.631578947368421, + "matched_token_number" : 60 + }, + "00000_00002-00126_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00145_00001-00153_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00196_00001-00203_00002" : { + "minimal_similarity" : 0.21766561514195584, + "maximum_similarity" : 0.5036496350364964, + "matched_token_number" : 69 + }, + "00044_00002-00184_00003" : { + "minimal_similarity" : 0.46464646464646464, + "maximum_similarity" : 0.48936170212765956, + "matched_token_number" : 46 + }, + "00044_00002-00184_00002" : { + "minimal_similarity" : 0.46464646464646464, + "maximum_similarity" : 0.48936170212765956, + "matched_token_number" : 46 + }, + "00129_00008-00142_00001" : { + "minimal_similarity" : 0.2723404255319149, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00192_00002-00194_00001" : { + "minimal_similarity" : 0.5190839694656488, + "maximum_similarity" : 0.6296296296296297, + "matched_token_number" : 68 + }, + "00097_00002-00177_00003" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00140_00001-00153_00001" : { + "minimal_similarity" : 0.5609756097560976, + "maximum_similarity" : 0.7931034482758621, + "matched_token_number" : 69 + }, + "00031_00003-00134_00001" : { + "minimal_similarity" : 0.4470588235294118, + "maximum_similarity" : 0.4691358024691358, + "matched_token_number" : 38 + }, + "00184_00002-00195_00002" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00184_00002-00195_00001" : { + "minimal_similarity" : 0.4661016949152542, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00031_00002-00204_00001" : { + "minimal_similarity" : 0.39166666666666666, + "maximum_similarity" : 0.5108695652173914, + "matched_token_number" : 47 + }, + "00137_00002-00200_00002" : { + "minimal_similarity" : 0.5658914728682171, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00044_00002-00187_00001" : { + "minimal_similarity" : 0.5378787878787878, + "maximum_similarity" : 0.7171717171717171, + "matched_token_number" : 71 + }, + "00194_00001-00203_00002" : { + "minimal_similarity" : 0.48905109489051096, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00000_00005-00198_00001" : { + "minimal_similarity" : 0.4276315789473684, + "maximum_similarity" : 0.5416666666666666, + "matched_token_number" : 65 + }, + "00186_00002-00197_00001" : { + "minimal_similarity" : 0.6304347826086957, + "maximum_similarity" : 0.6590909090909091, + "matched_token_number" : 87 + }, + "00126_00002-00178_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00031_00002-00202_00003" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.5869565217391305, + "matched_token_number" : 54 + }, + "00155_00001-00192_00001" : { + "minimal_similarity" : 0.34838709677419355, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00155_00001-00192_00002" : { + "minimal_similarity" : 0.40458015267175573, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00031_00002-00202_00002" : { + "minimal_similarity" : 0.375886524822695, + "maximum_similarity" : 0.5760869565217391, + "matched_token_number" : 53 + }, + "00192_00002-00196_00001" : { + "minimal_similarity" : 0.22082018927444794, + "maximum_similarity" : 0.5343511450381679, + "matched_token_number" : 70 + }, + "00160_00001-00194_00001" : { + "minimal_similarity" : 0.6029411764705882, + "maximum_similarity" : 0.7592592592592593, + "matched_token_number" : 82 + }, + "00142_00001-00155_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00178_00002-00193_00001" : { + "minimal_similarity" : 0.5488721804511278, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00134_00001-00154_00002" : { + "minimal_similarity" : 0.48739495798319327, + "maximum_similarity" : 0.7160493827160493, + "matched_token_number" : 58 + }, + "00178_00002-00196_00001" : { + "minimal_similarity" : 0.17034700315457413, + "maximum_similarity" : 0.43902439024390244, + "matched_token_number" : 54 + }, + "00192_00002-00199_00001" : { + "minimal_similarity" : 0.549618320610687, + "maximum_similarity" : 0.7578947368421053, + "matched_token_number" : 72 + }, + "00135_00001-00183_00004" : { + "minimal_similarity" : 0.541095890410959, + "maximum_similarity" : 0.5602836879432624, + "matched_token_number" : 79 + }, + "00092_00001-00200_00002" : { + "minimal_similarity" : 0.40310077519379844, + "maximum_similarity" : 0.4406779661016949, + "matched_token_number" : 52 + }, + "00135_00001-00186_00002" : { + "minimal_similarity" : 0.3835616438356164, + "maximum_similarity" : 0.4057971014492754, + "matched_token_number" : 56 + }, + "00193_00001-00203_00002" : { + "minimal_similarity" : 0.5547445255474452, + "maximum_similarity" : 0.5714285714285714, + "matched_token_number" : 76 + }, + "00193_00001-00200_00002" : { + "minimal_similarity" : 0.518796992481203, + "maximum_similarity" : 0.5348837209302325, + "matched_token_number" : 69 + }, + "00125_00001-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00130_00002-00135_00001" : { + "minimal_similarity" : 0.4041095890410959, + "maximum_similarity" : 0.6781609195402298, + "matched_token_number" : 59 + }, + "00097_00002-00141_00002" : { + "minimal_similarity" : 0.5833333333333334, + "maximum_similarity" : 0.5943396226415094, + "matched_token_number" : 63 + }, + "00125_00001-00186_00004" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00135_00001-00186_00004" : { + "minimal_similarity" : 0.410958904109589, + "maximum_similarity" : 0.5660377358490566, + "matched_token_number" : 60 + }, + "00127_00002-00178_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00137_00002-00178_00002" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00135_00001-00154_00002" : { + "minimal_similarity" : 0.5205479452054794, + "maximum_similarity" : 0.6386554621848739, + "matched_token_number" : 76 + }, + "00129_00008-00147_00001" : { + "minimal_similarity" : 0.30638297872340425, + "maximum_similarity" : 0.6101694915254238, + "matched_token_number" : 72 + }, + "00000_00001-00014_00001" : { + "minimal_similarity" : 0.5277777777777778, + "maximum_similarity" : 0.5816326530612245, + "matched_token_number" : 57 + }, + "00092_00001-00113_00002" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00000_00005-00195_00002" : { + "minimal_similarity" : 0.49166666666666664, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00000_00005-00195_00001" : { + "minimal_similarity" : 0.49166666666666664, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00031_00002-00142_00001" : { + "minimal_similarity" : 0.4322033898305085, + "maximum_similarity" : 0.5543478260869565, + "matched_token_number" : 51 + }, + "00197_00001-00203_00002" : { + "minimal_similarity" : 0.7518248175182481, + "maximum_similarity" : 0.7803030303030303, + "matched_token_number" : 103 + }, + "00142_00001-00187_00001" : { + "minimal_similarity" : 0.4393939393939394, + "maximum_similarity" : 0.4915254237288136, + "matched_token_number" : 58 + }, + "00145_00001-00155_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.7701149425287356, + "matched_token_number" : 67 + }, + "00013_00002-00133_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00141_00002-00201_00001" : { + "minimal_similarity" : 0.37037037037037035, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00014_00001-00147_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00077_00001-00145_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00147_00001-00196_00001" : { + "minimal_similarity" : 0.14826498422712933, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00154_00002-00186_00004" : { + "minimal_similarity" : 0.48739495798319327, + "maximum_similarity" : 0.5471698113207547, + "matched_token_number" : 58 + }, + "00095_00003-00127_00002" : { + "minimal_similarity" : 0.42441860465116277, + "maximum_similarity" : 0.5934959349593496, + "matched_token_number" : 73 + }, + "00154_00002-00186_00002" : { + "minimal_similarity" : 0.47101449275362317, + "maximum_similarity" : 0.5462184873949579, + "matched_token_number" : 65 + }, + "00129_00008-00203_00002" : { + "minimal_similarity" : 0.3872340425531915, + "maximum_similarity" : 0.6642335766423357, + "matched_token_number" : 91 + }, + "00136_00002-00177_00003" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5853658536585366, + "matched_token_number" : 72 + }, + "00155_00001-00160_00001" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.7241379310344828, + "matched_token_number" : 63 + }, + "00119_00001-00187_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.6111111111111112, + "matched_token_number" : 66 + }, + "00187_00001-00204_00001" : { + "minimal_similarity" : 0.7196969696969697, + "maximum_similarity" : 0.7916666666666666, + "matched_token_number" : 95 + }, + "00044_00002-00113_00002" : { + "minimal_similarity" : 0.45901639344262296, + "maximum_similarity" : 0.5656565656565656, + "matched_token_number" : 56 + }, + "00141_00002-00142_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00196_00001-00200_00002" : { + "minimal_similarity" : 0.21766561514195584, + "maximum_similarity" : 0.5348837209302325, + "matched_token_number" : 69 + }, + "00131_00005-00177_00003" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00153_00001-00195_00002" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00184_00002-00192_00002" : { + "minimal_similarity" : 0.5343511450381679, + "maximum_similarity" : 0.7446808510638298, + "matched_token_number" : 70 + }, + "00145_00001-00156_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00154_00002-00187_00001" : { + "minimal_similarity" : 0.5833333333333334, + "maximum_similarity" : 0.6470588235294118, + "matched_token_number" : 77 + }, + "00145_00001-00156_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00153_00001-00195_00001" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00135_00001-00156_00003" : { + "minimal_similarity" : 0.5547945205479452, + "maximum_similarity" : 0.5955882352941176, + "matched_token_number" : 81 + }, + "00129_00008-00204_00001" : { + "minimal_similarity" : 0.37872340425531914, + "maximum_similarity" : 0.7416666666666667, + "matched_token_number" : 89 + }, + "00135_00001-00156_00002" : { + "minimal_similarity" : 0.5547945205479452, + "maximum_similarity" : 0.5955882352941176, + "matched_token_number" : 81 + }, + "00184_00002-00192_00001" : { + "minimal_similarity" : 0.432258064516129, + "maximum_similarity" : 0.7127659574468085, + "matched_token_number" : 67 + }, + "00160_00001-00196_00001" : { + "minimal_similarity" : 0.24921135646687698, + "maximum_similarity" : 0.5808823529411765, + "matched_token_number" : 79 + }, + "00092_00001-00140_00001" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00077_00001-00204_00001" : { + "minimal_similarity" : 0.5125, + "maximum_similarity" : 0.6833333333333333, + "matched_token_number" : 82 + }, + "00120_00001-00203_00002" : { + "minimal_similarity" : 0.45255474452554745, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00125_00001-00184_00002" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00125_00001-00184_00003" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00138_00001-00154_00002" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00077_00001-00177_00003" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00140_00001-00184_00003" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5057471264367817, + "matched_token_number" : 44 + }, + "00140_00001-00184_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5057471264367817, + "matched_token_number" : 44 + }, + "00184_00003-00186_00002" : { + "minimal_similarity" : 0.4057971014492754, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 56 + }, + "00153_00001-00194_00001" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00187_00001-00203_00002" : { + "minimal_similarity" : 0.7518248175182481, + "maximum_similarity" : 0.7803030303030303, + "matched_token_number" : 103 + }, + "00113_00002-00131_00005" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6885245901639344, + "matched_token_number" : 84 + }, + "00121_00001-00200_00002" : { + "minimal_similarity" : 0.5367647058823529, + "maximum_similarity" : 0.5658914728682171, + "matched_token_number" : 73 + }, + "00095_00003-00199_00001" : { + "minimal_similarity" : 0.3313953488372093, + "maximum_similarity" : 0.6, + "matched_token_number" : 57 + }, + "00000_00002-00129_00008" : { + "minimal_similarity" : 0.251063829787234, + "maximum_similarity" : 0.5130434782608696, + "matched_token_number" : 59 + }, + "00077_00001-00202_00003" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 84 + }, + "00005_00002-00135_00001" : { + "minimal_similarity" : 0.45625, + "maximum_similarity" : 0.5, + "matched_token_number" : 73 + }, + "00077_00001-00202_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.5957446808510638, + "matched_token_number" : 84 + }, + "00137_00002-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00184_00003-00186_00004" : { + "minimal_similarity" : 0.5094339622641509, + "maximum_similarity" : 0.574468085106383, + "matched_token_number" : 54 + }, + "00137_00002-00202_00003" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00092_00001-00147_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 118 + }, + "00000_00002-00000_00005" : { + "minimal_similarity" : 0.8583333333333333, + "maximum_similarity" : 0.8956521739130435, + "matched_token_number" : 103 + }, + "00000_00002-00000_00003" : { + "minimal_similarity" : 0.8991596638655462, + "maximum_similarity" : 0.9304347826086956, + "matched_token_number" : 107 + }, + "00031_00003-00130_00002" : { + "minimal_similarity" : 0.5747126436781609, + "maximum_similarity" : 0.5882352941176471, + "matched_token_number" : 50 + }, + "00184_00002-00199_00001" : { + "minimal_similarity" : 0.9789473684210527, + "maximum_similarity" : 0.9893617021276596, + "matched_token_number" : 93 + }, + "00177_00003-00187_00001" : { + "minimal_similarity" : 0.5909090909090909, + "maximum_similarity" : 0.6341463414634146, + "matched_token_number" : 78 + }, + "00000_00003-00184_00003" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.6276595744680851, + "matched_token_number" : 59 + }, + "00142_00001-00156_00002" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00044_00002-00186_00004" : { + "minimal_similarity" : 0.6037735849056604, + "maximum_similarity" : 0.6464646464646465, + "matched_token_number" : 64 + }, + "00005_00002-00077_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 160 + }, + "00044_00002-00186_00002" : { + "minimal_similarity" : 0.6304347826086957, + "maximum_similarity" : 0.8787878787878788, + "matched_token_number" : 87 + }, + "00142_00001-00156_00003" : { + "minimal_similarity" : 0.34558823529411764, + "maximum_similarity" : 0.3983050847457627, + "matched_token_number" : 47 + }, + "00013_00002-00134_00001" : { + "minimal_similarity" : 0.4842105263157895, + "maximum_similarity" : 0.5679012345679012, + "matched_token_number" : 46 + }, + "00000_00003-00184_00002" : { + "minimal_similarity" : 0.4957983193277311, + "maximum_similarity" : 0.6276595744680851, + "matched_token_number" : 59 + }, + "00092_00001-00141_00002" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00195_00001-00201_00001" : { + "minimal_similarity" : 0.3389830508474576, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00184_00002-00193_00001" : { + "minimal_similarity" : 0.42857142857142855, + "maximum_similarity" : 0.6063829787234043, + "matched_token_number" : 57 + }, + "00136_00002-00178_00002" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5853658536585366, + "matched_token_number" : 72 + }, + "00000_00005-00005_00002" : { + "minimal_similarity" : 0.3875, + "maximum_similarity" : 0.5166666666666667, + "matched_token_number" : 62 + }, + "00156_00002-00186_00002" : { + "minimal_similarity" : 0.37681159420289856, + "maximum_similarity" : 0.38235294117647056, + "matched_token_number" : 52 + }, + "00196_00001-00201_00001" : { + "minimal_similarity" : 0.19558359621451105, + "maximum_similarity" : 0.7126436781609196, + "matched_token_number" : 62 + }, + "00147_00001-00195_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00147_00001-00195_00002" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00155_00001-00194_00001" : { + "minimal_similarity" : 0.5370370370370371, + "maximum_similarity" : 0.6666666666666666, + "matched_token_number" : 58 + }, + "00156_00002-00186_00004" : { + "minimal_similarity" : 0.4411764705882353, + "maximum_similarity" : 0.5660377358490566, + "matched_token_number" : 60 + }, + "00160_00001-00192_00001" : { + "minimal_similarity" : 0.5741935483870968, + "maximum_similarity" : 0.6544117647058824, + "matched_token_number" : 89 + }, + "00160_00001-00192_00002" : { + "minimal_similarity" : 0.6102941176470589, + "maximum_similarity" : 0.6335877862595419, + "matched_token_number" : 83 + }, + "00120_00001-00201_00001" : { + "minimal_similarity" : 0.3389830508474576, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00186_00004-00204_00001" : { + "minimal_similarity" : 0.5166666666666667, + "maximum_similarity" : 0.5849056603773585, + "matched_token_number" : 62 + }, + "00133_00001-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00133_00001-00186_00004" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00092_00001-00142_00001" : { + "minimal_similarity" : 0.5338983050847458, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00136_00002-00203_00002" : { + "minimal_similarity" : 0.45555555555555555, + "maximum_similarity" : 0.5985401459854015, + "matched_token_number" : 82 + }, + "00000_00003-00183_00004" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.5042016806722689, + "matched_token_number" : 60 + }, + "00095_00003-00194_00001" : { + "minimal_similarity" : 0.313953488372093, + "maximum_similarity" : 0.5, + "matched_token_number" : 54 + }, + "00138_00001-00156_00002" : { + "minimal_similarity" : 0.35294117647058826, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00138_00001-00156_00003" : { + "minimal_similarity" : 0.35294117647058826, + "maximum_similarity" : 0.4067796610169492, + "matched_token_number" : 48 + }, + "00196_00001-00202_00003" : { + "minimal_similarity" : 0.19242902208201892, + "maximum_similarity" : 0.4326241134751773, + "matched_token_number" : 61 + }, + "00196_00001-00202_00002" : { + "minimal_similarity" : 0.20189274447949526, + "maximum_similarity" : 0.45390070921985815, + "matched_token_number" : 64 + }, + "00155_00001-00193_00001" : { + "minimal_similarity" : 0.3533834586466165, + "maximum_similarity" : 0.5402298850574713, + "matched_token_number" : 47 + }, + "00184_00002-00194_00001" : { + "minimal_similarity" : 0.5092592592592593, + "maximum_similarity" : 0.5851063829787234, + "matched_token_number" : 55 + }, + "00194_00001-00201_00001" : { + "minimal_similarity" : 0.37037037037037035, + "maximum_similarity" : 0.45977011494252873, + "matched_token_number" : 40 + }, + "00077_00001-00178_00002" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00097_00002-00178_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5754716981132075, + "matched_token_number" : 61 + }, + "00136_00002-00202_00002" : { + "minimal_similarity" : 0.4388888888888889, + "maximum_similarity" : 0.5602836879432624, + "matched_token_number" : 79 + }, + "00136_00002-00202_00003" : { + "minimal_similarity" : 0.46111111111111114, + "maximum_similarity" : 0.5886524822695035, + "matched_token_number" : 83 + }, + "00134_00001-00184_00003" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5432098765432098, + "matched_token_number" : 44 + }, + "00135_00001-00153_00001" : { + "minimal_similarity" : 0.5273972602739726, + "maximum_similarity" : 0.6260162601626016, + "matched_token_number" : 77 + }, + "00186_00004-00203_00002" : { + "minimal_similarity" : 0.49635036496350365, + "maximum_similarity" : 0.6415094339622641, + "matched_token_number" : 68 + }, + "00095_00003-00193_00001" : { + "minimal_similarity" : 0.36046511627906974, + "maximum_similarity" : 0.46616541353383456, + "matched_token_number" : 62 + }, + "00120_00001-00142_00001" : { + "minimal_similarity" : 0.9830508474576272, + "maximum_similarity" : 0.9830508474576272, + "matched_token_number" : 116 + }, + "00136_00002-00145_00001" : { + "minimal_similarity" : 0.4, + "maximum_similarity" : 0.5853658536585366, + "matched_token_number" : 72 + }, + "00147_00001-00194_00001" : { + "minimal_similarity" : 0.4152542372881356, + "maximum_similarity" : 0.4537037037037037, + "matched_token_number" : 49 + }, + "00120_00001-00200_00002" : { + "minimal_similarity" : 0.4263565891472868, + "maximum_similarity" : 0.4661016949152542, + "matched_token_number" : 55 + }, + "00077_00001-00201_00001" : { + "minimal_similarity" : 0.24375, + "maximum_similarity" : 0.4482758620689655, + "matched_token_number" : 39 + }, + "00194_00001-00202_00003" : { + "minimal_similarity" : 0.45390070921985815, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 64 + }, + "00134_00001-00184_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5432098765432098, + "matched_token_number" : 44 + }, + "00194_00001-00202_00002" : { + "minimal_similarity" : 0.475177304964539, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00155_00001-00199_00001" : { + "minimal_similarity" : 0.5052631578947369, + "maximum_similarity" : 0.5517241379310345, + "matched_token_number" : 48 + }, + "00005_00002-00136_00002" : { + "minimal_similarity" : 0.4722222222222222, + "maximum_similarity" : 0.53125, + "matched_token_number" : 85 + }, + "00005_00002-00130_00002" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00119_00001-00183_00004" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.5555555555555556, + "matched_token_number" : 60 + }, + "00013_00002-00077_00001" : { + "minimal_similarity" : 0.34375, + "maximum_similarity" : 0.5789473684210527, + "matched_token_number" : 55 + }, + "00160_00001-00193_00001" : { + "minimal_similarity" : 0.5735294117647058, + "maximum_similarity" : 0.5864661654135338, + "matched_token_number" : 78 + }, + "00141_00002-00178_00002" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00031_00002-00177_00003" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00155_00001-00195_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00195_00001-00200_00002" : { + "minimal_similarity" : 0.4263565891472868, + "maximum_similarity" : 0.4661016949152542, + "matched_token_number" : 55 + }, + "00136_00002-00201_00001" : { + "minimal_similarity" : 0.2111111111111111, + "maximum_similarity" : 0.4367816091954023, + "matched_token_number" : 38 + }, + "00133_00001-00184_00003" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00133_00001-00184_00002" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00155_00001-00195_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00177_00003-00186_00004" : { + "minimal_similarity" : 0.45528455284552843, + "maximum_similarity" : 0.5283018867924528, + "matched_token_number" : 56 + }, + "00000_00002-00195_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00000_00002-00198_00001" : { + "minimal_similarity" : 0.4144736842105263, + "maximum_similarity" : 0.5478260869565217, + "matched_token_number" : 63 + }, + "00000_00002-00195_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.48695652173913045, + "matched_token_number" : 56 + }, + "00120_00001-00141_00002" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5185185185185185, + "matched_token_number" : 56 + }, + "00177_00003-00186_00002" : { + "minimal_similarity" : 0.4782608695652174, + "maximum_similarity" : 0.5365853658536586, + "matched_token_number" : 66 + }, + "00186_00004-00202_00003" : { + "minimal_similarity" : 0.425531914893617, + "maximum_similarity" : 0.5660377358490566, + "matched_token_number" : 60 + }, + "00186_00004-00202_00002" : { + "minimal_similarity" : 0.41843971631205673, + "maximum_similarity" : 0.5566037735849056, + "matched_token_number" : 59 + }, + "00121_00001-00141_00002" : { + "minimal_similarity" : 0.49264705882352944, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00095_00003-00195_00002" : { + "minimal_similarity" : 0.36046511627906974, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00095_00003-00195_00001" : { + "minimal_similarity" : 0.36046511627906974, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00120_00001-00177_00003" : { + "minimal_similarity" : 0.5691056910569106, + "maximum_similarity" : 0.5932203389830508, + "matched_token_number" : 70 + }, + "00005_00002-00134_00001" : { + "minimal_similarity" : 0.33125, + "maximum_similarity" : 0.654320987654321, + "matched_token_number" : 53 + }, + "00155_00001-00198_00001" : { + "minimal_similarity" : 0.28289473684210525, + "maximum_similarity" : 0.4942528735632184, + "matched_token_number" : 43 + }, + "00195_00001-00203_00002" : { + "minimal_similarity" : 0.45255474452554745, + "maximum_similarity" : 0.5254237288135594, + "matched_token_number" : 62 + }, + "00077_00001-00140_00001" : { + "minimal_similarity" : 0.3375, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00137_00002-00201_00001" : { + "minimal_similarity" : 0.3008130081300813, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00092_00001-00145_00001" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00136_00002-00140_00001" : { + "minimal_similarity" : 0.29444444444444445, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00095_00003-00198_00001" : { + "minimal_similarity" : 0.4186046511627907, + "maximum_similarity" : 0.47368421052631576, + "matched_token_number" : 72 + }, + "00184_00002-00197_00001" : { + "minimal_similarity" : 0.5227272727272727, + "maximum_similarity" : 0.7340425531914894, + "matched_token_number" : 69 + }, + "00156_00003-00178_00002" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00005_00002-00131_00005" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 160 + }, + "00000_00005-00160_00001" : { + "minimal_similarity" : 0.45588235294117646, + "maximum_similarity" : 0.5166666666666667, + "matched_token_number" : 62 + }, + "00178_00002-00199_00001" : { + "minimal_similarity" : 0.5121951219512195, + "maximum_similarity" : 0.6631578947368421, + "matched_token_number" : 63 + }, + "00121_00001-00202_00003" : { + "minimal_similarity" : 0.5035460992907801, + "maximum_similarity" : 0.5220588235294118, + "matched_token_number" : 71 + }, + "00130_00002-00138_00001" : { + "minimal_similarity" : 0.423728813559322, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00140_00001-00186_00002" : { + "minimal_similarity" : 0.38405797101449274, + "maximum_similarity" : 0.6091954022988506, + "matched_token_number" : 53 + }, + "00121_00001-00202_00002" : { + "minimal_similarity" : 0.5035460992907801, + "maximum_similarity" : 0.5220588235294118, + "matched_token_number" : 71 + }, + "00140_00001-00186_00004" : { + "minimal_similarity" : 0.4716981132075472, + "maximum_similarity" : 0.5747126436781609, + "matched_token_number" : 50 + }, + "00177_00003-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5528455284552846, + "matched_token_number" : 68 + }, + "00092_00001-00203_00002" : { + "minimal_similarity" : 0.46715328467153283, + "maximum_similarity" : 0.5423728813559322, + "matched_token_number" : 64 + }, + "00194_00001-00200_00002" : { + "minimal_similarity" : 0.5193798449612403, + "maximum_similarity" : 0.6203703703703703, + "matched_token_number" : 67 + }, + "00140_00001-00183_00004" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.6206896551724138, + "matched_token_number" : 54 + }, + "00137_00002-00145_00001" : { + "minimal_similarity" : 0.9512195121951219, + "maximum_similarity" : 0.9512195121951219, + "matched_token_number" : 117 + }, + "00005_00002-00133_00001" : { + "minimal_similarity" : 0.525, + "maximum_similarity" : 0.6829268292682927, + "matched_token_number" : 84 + }, + "00013_00002-00137_00002" : { + "minimal_similarity" : 0.4959349593495935, + "maximum_similarity" : 0.6421052631578947, + "matched_token_number" : 61 + }, + "00092_00001-00204_00001" : { + "minimal_similarity" : 0.5, + "maximum_similarity" : 0.5084745762711864, + "matched_token_number" : 60 + }, + "00195_00001-00202_00003" : { + "minimal_similarity" : 0.41843971631205673, + "maximum_similarity" : 0.5, + "matched_token_number" : 59 + }, + "00095_00003-00197_00001" : { + "minimal_similarity" : 0.37209302325581395, + "maximum_similarity" : 0.48484848484848486, + "matched_token_number" : 64 + }, + "00195_00001-00202_00002" : { + "minimal_similarity" : 0.4326241134751773, + "maximum_similarity" : 0.5169491525423728, + "matched_token_number" : 61 + }, + "00136_00002-00141_00002" : { + "minimal_similarity" : 0.35555555555555557, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 64 + }, + "00155_00001-00197_00001" : { + "minimal_similarity" : 0.42424242424242425, + "maximum_similarity" : 0.6436781609195402, + "matched_token_number" : 56 + }, + "00177_00003-00184_00002" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00177_00003-00184_00003" : { + "minimal_similarity" : 0.5203252032520326, + "maximum_similarity" : 0.6808510638297872, + "matched_token_number" : 64 + }, + "00134_00001-00186_00002" : { + "minimal_similarity" : 0.3115942028985507, + "maximum_similarity" : 0.5308641975308642, + "matched_token_number" : 43 + }, + "00000_00002-00196_00001" : { + "minimal_similarity" : 0.17350157728706625, + "maximum_similarity" : 0.4782608695652174, + "matched_token_number" : 55 + }, + "00156_00002-00187_00001" : { + "minimal_similarity" : 0.5367647058823529, + "maximum_similarity" : 0.553030303030303, + "matched_token_number" : 73 + }, + "00134_00001-00186_00004" : { + "minimal_similarity" : 0.41509433962264153, + "maximum_similarity" : 0.5432098765432098, + "matched_token_number" : 44 + }, + "00156_00003-00177_00003" : { + "minimal_similarity" : 0.4485294117647059, + "maximum_similarity" : 0.4959349593495935, + "matched_token_number" : 61 + }, + "00186_00004-00200_00002" : { + "minimal_similarity" : 0.3953488372093023, + "maximum_similarity" : 0.4811320754716981, + "matched_token_number" : 51 + }, + "00121_00001-00201_00001" : { + "minimal_similarity" : 0.3014705882352941, + "maximum_similarity" : 0.47126436781609193, + "matched_token_number" : 41 + }, + "00137_00002-00204_00001" : { + "minimal_similarity" : 0.5447154471544715, + "maximum_similarity" : 0.5583333333333333, + "matched_token_number" : 67 + }, + "00000_00003-00186_00004" : { + "minimal_similarity" : 0.3949579831932773, + "maximum_similarity" : 0.44339622641509435, + "matched_token_number" : 47 + }, + "00000_00003-00186_00002" : { + "minimal_similarity" : 0.43478260869565216, + "maximum_similarity" : 0.5042016806722689, + "matched_token_number" : 60 + }, + "00155_00001-00196_00001" : { + "minimal_similarity" : 0.1167192429022082, + "maximum_similarity" : 0.42528735632183906, + "matched_token_number" : 37 + }, + "00031_00002-00178_00002" : { + "minimal_similarity" : 0.4634146341463415, + "maximum_similarity" : 0.6195652173913043, + "matched_token_number" : 57 + }, + "00136_00002-00200_00002" : { + "minimal_similarity" : 0.45555555555555555, + "maximum_similarity" : 0.6356589147286822, + "matched_token_number" : 82 + }, + "00013_00002-00138_00001" : { + "minimal_similarity" : 0.4745762711864407, + "maximum_similarity" : 0.5894736842105263, + "matched_token_number" : 56 + }, + "00141_00002-00177_00003" : { + "minimal_similarity" : 0.5772357723577236, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00184_00003-00187_00001" : { + "minimal_similarity" : 0.5227272727272727, + "maximum_similarity" : 0.7340425531914894, + "matched_token_number" : 69 + }, + "00014_00001-00113_00002" : { + "minimal_similarity" : 0.5819672131147541, + "maximum_similarity" : 0.6574074074074074, + "matched_token_number" : 71 + }, + "00137_00002-00203_00002" : { + "minimal_similarity" : 0.5766423357664233, + "maximum_similarity" : 0.6422764227642277, + "matched_token_number" : 79 + }, + "00184_00002-00198_00001" : { + "minimal_similarity" : 0.40789473684210525, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 62 + }, + "00202_00003-00203_00002" : { + "minimal_similarity" : 0.7163120567375887, + "maximum_similarity" : 0.7372262773722628, + "matched_token_number" : 101 + }, + "00134_00001-00187_00001" : { + "minimal_similarity" : 0.36363636363636365, + "maximum_similarity" : 0.5925925925925926, + "matched_token_number" : 48 + }, + "00095_00003-00196_00001" : { + "minimal_similarity" : 0.2744479495268139, + "maximum_similarity" : 0.5058139534883721, + "matched_token_number" : 87 + }, + "00133_00001-00183_00004" : { + "minimal_similarity" : 0.48226950354609927, + "maximum_similarity" : 0.5528455284552846, + "matched_token_number" : 68 + }, + "00000_00002-00197_00001" : { + "minimal_similarity" : 0.3787878787878788, + "maximum_similarity" : 0.43478260869565216, + "matched_token_number" : 50 + }, + "00121_00001-00142_00001" : { + "minimal_similarity" : 0.4632352941176471, + "maximum_similarity" : 0.5338983050847458, + "matched_token_number" : 63 + }, + "00044_00002-00119_00001" : { + "minimal_similarity" : 0.4537037037037037, + "maximum_similarity" : 0.494949494949495, + "matched_token_number" : 49 + } + }, + "identifier" : "MTM: 3", + "goldStandard" : { + "matchAverage" : 0.9452320735924054, + "nonMatchAverage" : 0.4965832655691376 + } +}, { + "tests" : { + "00113_00002-00141_00002" : { + "minimal_similarity" : 0.2634730538922156, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00092_00001-00197_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00140_00001-00154_00002" : { + "minimal_similarity" : 0.4146341463414634, + "maximum_similarity" : 0.5112781954887218, + "matched_token_number" : 68 + }, + "00013_00002-00129_00008" : { + "minimal_similarity" : 0.11347517730496454, + "maximum_similarity" : 0.24060150375939848, + "matched_token_number" : 32 + }, + "00005_00002-00125_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00147_00001-00178_00002" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00002-00119_00001" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00119_00001-00125_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00141_00002-00194_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 150 + }, + "00129_00008-00196_00001" : { + "minimal_similarity" : 0.08264462809917356, + "maximum_similarity" : 0.10638297872340426, + "matched_token_number" : 30 + }, + "00135_00001-00195_00002" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.058823529411764705, + "matched_token_number" : 9 + }, + "00000_00005-00194_00001" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00145_00001-00160_00001" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00153_00001-00202_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00136_00002-00142_00001" : { + "minimal_similarity" : 0.0547945205479452, + "maximum_similarity" : 0.0784313725490196, + "matched_token_number" : 12 + }, + "00202_00002-00204_00001" : { + "minimal_similarity" : 0.3191489361702128, + "maximum_similarity" : 0.375, + "matched_token_number" : 45 + }, + "00031_00002-00160_00001" : { + "minimal_similarity" : 0.13970588235294118, + "maximum_similarity" : 0.1532258064516129, + "matched_token_number" : 19 + }, + "00135_00001-00195_00001" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.058823529411764705, + "matched_token_number" : 9 + }, + "00153_00001-00202_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00000_00003-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00126_00002-00177_00003" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00183_00004-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00002-00203_00002" : { + "minimal_similarity" : 0.16551724137931034, + "maximum_similarity" : 0.1935483870967742, + "matched_token_number" : 24 + }, + "00005_00002-00192_00002" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07633587786259542, + "matched_token_number" : 10 + }, + "00177_00003-00192_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00005_00002-00192_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.06451612903225806, + "matched_token_number" : 10 + }, + "00177_00003-00192_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00156_00003-00183_00004" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.08163265306122448, + "matched_token_number" : 12 + }, + "00000_00001-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00145_00001-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16071428571428573, + "matched_token_number" : 27 + }, + "00145_00001-00186_00004" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00125_00001-00137_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00031_00003-00199_00001" : { + "minimal_similarity" : 0.17543859649122806, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 20 + }, + "00138_00001-00147_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 144 + }, + "00134_00001-00142_00001" : { + "minimal_similarity" : 0.16339869281045752, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00005_00002-00120_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13793103448275862, + "matched_token_number" : 20 + }, + "00195_00001-00204_00001" : { + "minimal_similarity" : 0.08496732026143791, + "maximum_similarity" : 0.10833333333333334, + "matched_token_number" : 13 + }, + "00120_00001-00198_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00137_00002-00195_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00137_00002-00195_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00155_00001-00177_00003" : { + "minimal_similarity" : 0.30357142857142855, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00000_00001-00127_00002" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00031_00002-00119_00001" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00097_00002-00195_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00195_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00002-00160_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.07352941176470588, + "matched_token_number" : 10 + }, + "00127_00002-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00120_00001-00126_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 145 + }, + "00133_00001-00136_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00154_00002-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00127_00002-00137_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00014_00001-00202_00002" : { + "minimal_similarity" : 0.14666666666666667, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00000_00005-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00134_00001-00201_00001" : { + "minimal_similarity" : 0.08461538461538462, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00184_00003-00202_00002" : { + "minimal_similarity" : 0.14893617021276595, + "maximum_similarity" : 0.22340425531914893, + "matched_token_number" : 21 + }, + "00044_00002-00196_00001" : { + "minimal_similarity" : 0.027548209366391185, + "maximum_similarity" : 0.07352941176470588, + "matched_token_number" : 10 + }, + "00178_00002-00203_00002" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00031_00002-00186_00002" : { + "minimal_similarity" : 0.17045454545454544, + "maximum_similarity" : 0.24193548387096775, + "matched_token_number" : 30 + }, + "00184_00003-00202_00003" : { + "minimal_similarity" : 0.14893617021276595, + "maximum_similarity" : 0.22340425531914893, + "matched_token_number" : 21 + }, + "00000_00001-00194_00001" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2125984251968504, + "matched_token_number" : 27 + }, + "00031_00002-00186_00004" : { + "minimal_similarity" : 0.14583333333333334, + "maximum_similarity" : 0.1693548387096774, + "matched_token_number" : 21 + }, + "00014_00001-00202_00003" : { + "minimal_similarity" : 0.14666666666666667, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00000_00003-00194_00001" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00119_00001-00120_00001" : { + "minimal_similarity" : 0.31333333333333335, + "maximum_similarity" : 0.32413793103448274, + "matched_token_number" : 47 + }, + "00013_00002-00014_00001" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.15037593984962405, + "matched_token_number" : 20 + }, + "00120_00001-00193_00001" : { + "minimal_similarity" : 0.12727272727272726, + "maximum_similarity" : 0.14482758620689656, + "matched_token_number" : 21 + }, + "00126_00002-00156_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00126_00002-00156_00003" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00156_00002-00196_00001" : { + "minimal_similarity" : 0.049586776859504134, + "maximum_similarity" : 0.10112359550561797, + "matched_token_number" : 18 + }, + "00187_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00077_00001-00154_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.12804878048780488, + "matched_token_number" : 21 + }, + "00127_00002-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00120_00001-00121_00001" : { + "minimal_similarity" : 0.17098445595854922, + "maximum_similarity" : 0.22758620689655173, + "matched_token_number" : 33 + }, + "00192_00001-00193_00001" : { + "minimal_similarity" : 0.11515151515151516, + "maximum_similarity" : 0.12258064516129032, + "matched_token_number" : 19 + }, + "00111_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00119_00001-00141_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 150 + }, + "00031_00003-00127_00002" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00000_00002-00135_00001" : { + "minimal_similarity" : 0.10869565217391304, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00142_00001-00192_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.1297709923664122, + "matched_token_number" : 17 + }, + "00142_00001-00192_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.08496732026143791, + "matched_token_number" : 13 + }, + "00142_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00130_00002-00192_00002" : { + "minimal_similarity" : 0.12030075187969924, + "maximum_similarity" : 0.12213740458015267, + "matched_token_number" : 16 + }, + "00130_00002-00192_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.09774436090225563, + "matched_token_number" : 13 + }, + "00077_00001-00095_00003" : { + "minimal_similarity" : 0.04950495049504951, + "maximum_similarity" : 0.05291005291005291, + "matched_token_number" : 10 + }, + "00133_00001-00187_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00130_00002-00155_00001" : { + "minimal_similarity" : 0.39097744360902253, + "maximum_similarity" : 0.416, + "matched_token_number" : 52 + }, + "00147_00001-00199_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00077_00001-00196_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.047619047619047616, + "matched_token_number" : 9 + }, + "00120_00001-00147_00001" : { + "minimal_similarity" : 0.12413793103448276, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00125_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00113_00002-00125_00001" : { + "minimal_similarity" : 0.9940476190476191, + "maximum_similarity" : 1.0, + "matched_token_number" : 167 + }, + "00000_00002-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00013_00002-00044_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00126_00002-00198_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00044_00002-00129_00008" : { + "minimal_similarity" : 0.07801418439716312, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00154_00002-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06707317073170732, + "matched_token_number" : 11 + }, + "00178_00002-00195_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00121_00001-00183_00004" : { + "minimal_similarity" : 0.046632124352331605, + "maximum_similarity" : 0.061224489795918366, + "matched_token_number" : 9 + }, + "00186_00002-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00121_00001-00153_00001" : { + "minimal_similarity" : 0.7046632124352331, + "maximum_similarity" : 0.8095238095238095, + "matched_token_number" : 136 + }, + "00092_00001-00192_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00092_00001-00192_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00160_00001-00204_00001" : { + "minimal_similarity" : 0.14705882352941177, + "maximum_similarity" : 0.16666666666666666, + "matched_token_number" : 20 + }, + "00111_00001-00125_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00193_00001-00195_00001" : { + "minimal_similarity" : 0.12727272727272726, + "maximum_similarity" : 0.13725490196078433, + "matched_token_number" : 21 + }, + "00178_00002-00195_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00095_00003-00160_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00193_00001-00195_00002" : { + "minimal_similarity" : 0.12727272727272726, + "maximum_similarity" : 0.13725490196078433, + "matched_token_number" : 21 + }, + "00130_00002-00134_00001" : { + "minimal_similarity" : 0.37593984962406013, + "maximum_similarity" : 0.42735042735042733, + "matched_token_number" : 50 + }, + "00000_00002-00186_00004" : { + "minimal_similarity" : 0.2569444444444444, + "maximum_similarity" : 0.2569444444444444, + "matched_token_number" : 37 + }, + "00119_00001-00192_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.08666666666666667, + "matched_token_number" : 13 + }, + "00000_00002-00186_00002" : { + "minimal_similarity" : 0.22727272727272727, + "maximum_similarity" : 0.2777777777777778, + "matched_token_number" : 40 + }, + "00031_00003-00178_00002" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00119_00001-00192_00002" : { + "minimal_similarity" : 0.11333333333333333, + "maximum_similarity" : 0.1297709923664122, + "matched_token_number" : 17 + }, + "00136_00002-00147_00001" : { + "minimal_similarity" : 0.1004566210045662, + "maximum_similarity" : 0.1527777777777778, + "matched_token_number" : 22 + }, + "00005_00002-00197_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07575757575757576, + "matched_token_number" : 10 + }, + "00156_00003-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00177_00003-00197_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00155_00001-00156_00002" : { + "minimal_similarity" : 0.11797752808988764, + "maximum_similarity" : 0.168, + "matched_token_number" : 21 + }, + "00031_00003-00131_00005" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.17543859649122806, + "matched_token_number" : 20 + }, + "00129_00008-00145_00001" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17857142857142858, + "matched_token_number" : 30 + }, + "00126_00002-00130_00002" : { + "minimal_similarity" : 0.18620689655172415, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00155_00001-00156_00003" : { + "minimal_similarity" : 0.11797752808988764, + "maximum_similarity" : 0.168, + "matched_token_number" : 21 + }, + "00113_00002-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00140_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00134_00001-00147_00001" : { + "minimal_similarity" : 0.0763888888888889, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00138_00001-00177_00003" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00186_00004-00199_00001" : { + "minimal_similarity" : 0.0763888888888889, + "maximum_similarity" : 0.11578947368421053, + "matched_token_number" : 11 + }, + "00192_00002-00197_00001" : { + "minimal_similarity" : 0.49242424242424243, + "maximum_similarity" : 0.4961832061068702, + "matched_token_number" : 65 + }, + "00184_00002-00186_00002" : { + "minimal_similarity" : 0.09659090909090909, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00092_00001-00134_00001" : { + "minimal_similarity" : 0.0763888888888889, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00183_00004-00204_00001" : { + "minimal_similarity" : 0.061224489795918366, + "maximum_similarity" : 0.075, + "matched_token_number" : 9 + }, + "00184_00002-00186_00004" : { + "minimal_similarity" : 0.1388888888888889, + "maximum_similarity" : 0.2127659574468085, + "matched_token_number" : 20 + }, + "00014_00001-00199_00001" : { + "minimal_similarity" : 0.06666666666666667, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00097_00002-00160_00001" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.0661764705882353, + "matched_token_number" : 9 + }, + "00131_00005-00153_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00131_00005-00186_00004" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00095_00003-00119_00001" : { + "minimal_similarity" : 0.10891089108910891, + "maximum_similarity" : 0.14666666666666667, + "matched_token_number" : 22 + }, + "00119_00001-00200_00002" : { + "minimal_similarity" : 0.058823529411764705, + "maximum_similarity" : 0.06666666666666667, + "matched_token_number" : 10 + }, + "00000_00003-00000_00005" : { + "minimal_similarity" : 0.912751677852349, + "maximum_similarity" : 0.918918918918919, + "matched_token_number" : 136 + }, + "00119_00001-00155_00001" : { + "minimal_similarity" : 0.3933333333333333, + "maximum_similarity" : 0.472, + "matched_token_number" : 59 + }, + "00131_00005-00186_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.11363636363636363, + "matched_token_number" : 20 + }, + "00129_00008-00133_00001" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17857142857142858, + "matched_token_number" : 30 + }, + "00097_00002-00153_00001" : { + "minimal_similarity" : 0.07738095238095238, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00000_00002-00013_00002" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00127_00002-00141_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00031_00002-00092_00001" : { + "minimal_similarity" : 0.0763888888888889, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00000_00005-00131_00005" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.06040268456375839, + "matched_token_number" : 9 + }, + "00184_00003-00199_00001" : { + "minimal_similarity" : 0.9157894736842105, + "maximum_similarity" : 0.925531914893617, + "matched_token_number" : 87 + }, + "00044_00002-00095_00003" : { + "minimal_similarity" : 0.12871287128712872, + "maximum_similarity" : 0.19117647058823528, + "matched_token_number" : 26 + }, + "00113_00002-00197_00001" : { + "minimal_similarity" : 0.1377245508982036, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00044_00002-00138_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.07352941176470588, + "matched_token_number" : 10 + }, + "00000_00001-00136_00002" : { + "minimal_similarity" : 0.091324200913242, + "maximum_similarity" : 0.15748031496062992, + "matched_token_number" : 20 + }, + "00129_00008-00140_00001" : { + "minimal_similarity" : 0.07801418439716312, + "maximum_similarity" : 0.16541353383458646, + "matched_token_number" : 22 + }, + "00133_00001-00145_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00031_00003-00136_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.16666666666666666, + "matched_token_number" : 19 + }, + "00141_00002-00202_00003" : { + "minimal_similarity" : 0.14666666666666667, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00005_00002-00155_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.152, + "matched_token_number" : 19 + }, + "00192_00002-00202_00002" : { + "minimal_similarity" : 0.46808510638297873, + "maximum_similarity" : 0.5038167938931297, + "matched_token_number" : 66 + }, + "00141_00002-00202_00002" : { + "minimal_similarity" : 0.14666666666666667, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00031_00002-00156_00003" : { + "minimal_similarity" : 0.21910112359550563, + "maximum_similarity" : 0.31451612903225806, + "matched_token_number" : 39 + }, + "00014_00001-00194_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 150 + }, + "00031_00002-00156_00002" : { + "minimal_similarity" : 0.21910112359550563, + "maximum_similarity" : 0.31451612903225806, + "matched_token_number" : 39 + }, + "00138_00001-00184_00003" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.10638297872340426, + "matched_token_number" : 10 + }, + "00192_00002-00202_00003" : { + "minimal_similarity" : 0.48936170212765956, + "maximum_similarity" : 0.5267175572519084, + "matched_token_number" : 69 + }, + "00044_00002-00204_00001" : { + "minimal_similarity" : 0.17647058823529413, + "maximum_similarity" : 0.2, + "matched_token_number" : 24 + }, + "00000_00001-00202_00002" : { + "minimal_similarity" : 0.23404255319148937, + "maximum_similarity" : 0.25984251968503935, + "matched_token_number" : 33 + }, + "00111_00001-00192_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00138_00001-00184_00002" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.10638297872340426, + "matched_token_number" : 10 + }, + "00000_00001-00202_00003" : { + "minimal_similarity" : 0.2127659574468085, + "maximum_similarity" : 0.23622047244094488, + "matched_token_number" : 30 + }, + "00111_00001-00192_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00183_00004-00187_00001" : { + "minimal_similarity" : 0.07482993197278912, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 11 + }, + "00000_00002-00130_00002" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00031_00003-00077_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.17543859649122806, + "matched_token_number" : 20 + }, + "00126_00002-00186_00004" : { + "minimal_similarity" : 0.1103448275862069, + "maximum_similarity" : 0.1111111111111111, + "matched_token_number" : 16 + }, + "00153_00001-00199_00001" : { + "minimal_similarity" : 0.05952380952380952, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00126_00002-00186_00002" : { + "minimal_similarity" : 0.09090909090909091, + "maximum_similarity" : 0.1103448275862069, + "matched_token_number" : 16 + }, + "00160_00001-00199_00001" : { + "minimal_similarity" : 0.0661764705882353, + "maximum_similarity" : 0.09473684210526316, + "matched_token_number" : 9 + }, + "00014_00001-00134_00001" : { + "minimal_similarity" : 0.26, + "maximum_similarity" : 0.3333333333333333, + "matched_token_number" : 39 + }, + "00133_00001-00199_00001" : { + "minimal_similarity" : 0.05952380952380952, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00000_00003-00005_00002" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00127_00002-00153_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00113_00002-00192_00001" : { + "minimal_similarity" : 0.1377245508982036, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00133_00001-00204_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00044_00002-00145_00001" : { + "minimal_similarity" : 0.16071428571428573, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00113_00002-00192_00002" : { + "minimal_similarity" : 0.15568862275449102, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00142_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00125_00001-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00129_00008-00138_00001" : { + "minimal_similarity" : 0.031914893617021274, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00125_00001-00153_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00178_00002-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16071428571428573, + "matched_token_number" : 27 + }, + "00000_00001-00131_00005" : { + "minimal_similarity" : 0.06878306878306878, + "maximum_similarity" : 0.10236220472440945, + "matched_token_number" : 13 + }, + "00138_00001-00198_00001" : { + "minimal_similarity" : 0.050505050505050504, + "maximum_similarity" : 0.06944444444444445, + "matched_token_number" : 10 + }, + "00000_00005-00136_00002" : { + "minimal_similarity" : 0.0410958904109589, + "maximum_similarity" : 0.06040268456375839, + "matched_token_number" : 9 + }, + "00178_00002-00186_00004" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00014_00001-00127_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00192_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00002-00177_00003" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00125_00001-00141_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00092_00001-00120_00001" : { + "minimal_similarity" : 0.12413793103448276, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00111_00001-00197_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00154_00002-00195_00001" : { + "minimal_similarity" : 0.15853658536585366, + "maximum_similarity" : 0.16993464052287582, + "matched_token_number" : 26 + }, + "00136_00002-00156_00003" : { + "minimal_similarity" : 0.1324200913242009, + "maximum_similarity" : 0.16292134831460675, + "matched_token_number" : 29 + }, + "00131_00005-00203_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13793103448275862, + "matched_token_number" : 20 + }, + "00197_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00154_00002-00195_00002" : { + "minimal_similarity" : 0.15853658536585366, + "maximum_similarity" : 0.16993464052287582, + "matched_token_number" : 26 + }, + "00198_00001-00202_00002" : { + "minimal_similarity" : 0.15151515151515152, + "maximum_similarity" : 0.2127659574468085, + "matched_token_number" : 30 + }, + "00198_00001-00202_00003" : { + "minimal_similarity" : 0.18181818181818182, + "maximum_similarity" : 0.2553191489361702, + "matched_token_number" : 36 + }, + "00031_00003-00202_00002" : { + "minimal_similarity" : 0.22695035460992907, + "maximum_similarity" : 0.2807017543859649, + "matched_token_number" : 32 + }, + "00031_00003-00202_00003" : { + "minimal_similarity" : 0.23404255319148937, + "maximum_similarity" : 0.2894736842105263, + "matched_token_number" : 33 + }, + "00000_00005-00178_00002" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00031_00003-00187_00001" : { + "minimal_similarity" : 0.26515151515151514, + "maximum_similarity" : 0.30701754385964913, + "matched_token_number" : 35 + }, + "00186_00002-00194_00001" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.18, + "matched_token_number" : 27 + }, + "00000_00001-00178_00002" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00005_00002-00111_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00126_00002-00135_00001" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.06206896551724138, + "matched_token_number" : 9 + }, + "00131_00005-00137_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00186_00002-00202_00003" : { + "minimal_similarity" : 0.36363636363636365, + "maximum_similarity" : 0.45390070921985815, + "matched_token_number" : 64 + }, + "00186_00002-00202_00002" : { + "minimal_similarity" : 0.3125, + "maximum_similarity" : 0.3900709219858156, + "matched_token_number" : 55 + }, + "00138_00001-00193_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00119_00001-00197_00001" : { + "minimal_similarity" : 0.08666666666666667, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00092_00001-00125_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00113_00002-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.0658682634730539, + "matched_token_number" : 11 + }, + "00129_00008-00187_00001" : { + "minimal_similarity" : 0.07446808510638298, + "maximum_similarity" : 0.1590909090909091, + "matched_token_number" : 21 + }, + "00131_00005-00135_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.09782608695652174, + "matched_token_number" : 18 + }, + "00131_00005-00195_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13071895424836602, + "matched_token_number" : 20 + }, + "00000_00001-00077_00001" : { + "minimal_similarity" : 0.06878306878306878, + "maximum_similarity" : 0.10236220472440945, + "matched_token_number" : 13 + }, + "00000_00005-00077_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.06040268456375839, + "matched_token_number" : 9 + }, + "00127_00002-00195_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00131_00005-00195_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13071895424836602, + "matched_token_number" : 20 + }, + "00044_00002-00154_00002" : { + "minimal_similarity" : 0.16463414634146342, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00127_00002-00195_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00031_00002-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00120_00001-00156_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00111_00001-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00120_00001-00156_00003" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00129_00008-00184_00002" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00129_00008-00184_00003" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00000_00005-00127_00002" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00199_00001-00204_00001" : { + "minimal_similarity" : 0.075, + "maximum_similarity" : 0.09473684210526316, + "matched_token_number" : 9 + }, + "00138_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00138_00001-00142_00001" : { + "minimal_similarity" : 0.11764705882352941, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00125_00001-00195_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00125_00001-00195_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00111_00001-00141_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00141_00002-00199_00001" : { + "minimal_similarity" : 0.06666666666666667, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00145_00001-00195_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00097_00002-00203_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00145_00001-00195_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00192_00001-00198_00001" : { + "minimal_similarity" : 0.13131313131313133, + "maximum_similarity" : 0.16774193548387098, + "matched_token_number" : 26 + }, + "00113_00002-00137_00002" : { + "minimal_similarity" : 0.9940476190476191, + "maximum_similarity" : 1.0, + "matched_token_number" : 167 + }, + "00126_00002-00142_00001" : { + "minimal_similarity" : 0.9477124183006536, + "maximum_similarity" : 1.0, + "matched_token_number" : 145 + }, + "00153_00001-00155_00001" : { + "minimal_similarity" : 0.30357142857142855, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00145_00001-00203_00002" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00127_00002-00197_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00126_00002-00193_00001" : { + "minimal_similarity" : 0.12727272727272726, + "maximum_similarity" : 0.14482758620689656, + "matched_token_number" : 21 + }, + "00031_00003-00194_00001" : { + "minimal_similarity" : 0.16, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00111_00001-00137_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00129_00008-00136_00002" : { + "minimal_similarity" : 0.07092198581560284, + "maximum_similarity" : 0.091324200913242, + "matched_token_number" : 20 + }, + "00156_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00130_00002" : { + "minimal_similarity" : 0.25675675675675674, + "maximum_similarity" : 0.2857142857142857, + "matched_token_number" : 38 + }, + "00126_00002-00184_00002" : { + "minimal_similarity" : 0.11724137931034483, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00077_00001-00187_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07575757575757576, + "matched_token_number" : 10 + }, + "00126_00002-00184_00003" : { + "minimal_similarity" : 0.11724137931034483, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00092_00001-00137_00002" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00135_00001-00200_00002" : { + "minimal_similarity" : 0.05434782608695652, + "maximum_similarity" : 0.058823529411764705, + "matched_token_number" : 10 + }, + "00177_00003-00202_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00140_00001-00147_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00183_00004" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.061224489795918366, + "matched_token_number" : 9 + }, + "00031_00003-00140_00001" : { + "minimal_similarity" : 0.10526315789473684, + "maximum_similarity" : 0.12280701754385964, + "matched_token_number" : 14 + }, + "00154_00002-00197_00001" : { + "minimal_similarity" : 0.1402439024390244, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00141_00002-00187_00001" : { + "minimal_similarity" : 0.08666666666666667, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00013_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00095_00003-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00002-00121_00001" : { + "minimal_similarity" : 0.10362694300518134, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00000_00005-00187_00001" : { + "minimal_similarity" : 0.14093959731543623, + "maximum_similarity" : 0.1590909090909091, + "matched_token_number" : 21 + }, + "00177_00003-00202_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00031_00002-00153_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00044_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00111_00001-00195_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00111_00001-00195_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00183_00004-00184_00003" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00183_00004-00184_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00126_00002-00201_00001" : { + "minimal_similarity" : 0.1310344827586207, + "maximum_similarity" : 0.14615384615384616, + "matched_token_number" : 19 + }, + "00131_00005-00183_00004" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.12244897959183673, + "matched_token_number" : 18 + }, + "00119_00001-00153_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00120_00001-00138_00001" : { + "minimal_similarity" : 0.12413793103448276, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00125_00001-00192_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00125_00001-00192_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00121_00001-00186_00002" : { + "minimal_similarity" : 0.17098445595854922, + "maximum_similarity" : 0.1875, + "matched_token_number" : 33 + }, + "00140_00001-00142_00001" : { + "minimal_similarity" : 0.17647058823529413, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00095_00003-00137_00002" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.13690476190476192, + "matched_token_number" : 23 + }, + "00184_00002-00184_00003" : { + "minimal_similarity" : 0.9680851063829787, + "maximum_similarity" : 0.9680851063829787, + "matched_token_number" : 91 + }, + "00145_00001-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.22023809523809523, + "matched_token_number" : 37 + }, + "00000_00002-00153_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00119_00001-00202_00003" : { + "minimal_similarity" : 0.14666666666666667, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00121_00001-00186_00004" : { + "minimal_similarity" : 0.17098445595854922, + "maximum_similarity" : 0.22916666666666666, + "matched_token_number" : 33 + }, + "00000_00001-00113_00002" : { + "minimal_similarity" : 0.1497005988023952, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00134_00001-00196_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.07692307692307693, + "matched_token_number" : 9 + }, + "00119_00001-00202_00002" : { + "minimal_similarity" : 0.14666666666666667, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00140_00001-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00111_00001-00134_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00095_00003-00130_00002" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00138_00001-00186_00002" : { + "minimal_similarity" : 0.056818181818181816, + "maximum_similarity" : 0.06944444444444445, + "matched_token_number" : 10 + }, + "00130_00002-00200_00002" : { + "minimal_similarity" : 0.10588235294117647, + "maximum_similarity" : 0.13533834586466165, + "matched_token_number" : 18 + }, + "00138_00001-00186_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00135_00001-00141_00002" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.24, + "matched_token_number" : 36 + }, + "00092_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00145_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00097_00002-00137_00002" : { + "minimal_similarity" : 0.07738095238095238, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00136_00002-00156_00002" : { + "minimal_similarity" : 0.1324200913242009, + "maximum_similarity" : 0.16292134831460675, + "matched_token_number" : 29 + }, + "00126_00002-00203_00002" : { + "minimal_similarity" : 0.15172413793103448, + "maximum_similarity" : 0.15172413793103448, + "matched_token_number" : 22 + }, + "00133_00001-00194_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00137_00002-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00145_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00195_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00002-00137_00002" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00138_00001-00160_00001" : { + "minimal_similarity" : 0.1527777777777778, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00013_00002-00178_00002" : { + "minimal_similarity" : 0.18452380952380953, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00195_00002-00203_00002" : { + "minimal_similarity" : 0.1437908496732026, + "maximum_similarity" : 0.15172413793103448, + "matched_token_number" : 22 + }, + "00137_00002-00186_00004" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00137_00002-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16071428571428573, + "matched_token_number" : 27 + }, + "00095_00003-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00155_00001" : { + "minimal_similarity" : 0.3933333333333333, + "maximum_similarity" : 0.472, + "matched_token_number" : 59 + }, + "00095_00003-00135_00001" : { + "minimal_similarity" : 0.04950495049504951, + "maximum_similarity" : 0.05434782608695652, + "matched_token_number" : 10 + }, + "00014_00001-00178_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00184_00003-00197_00001" : { + "minimal_similarity" : 0.10606060606060606, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00000_00005-00014_00001" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00126_00002-00160_00001" : { + "minimal_similarity" : 0.06206896551724138, + "maximum_similarity" : 0.0661764705882353, + "matched_token_number" : 9 + }, + "00134_00001-00177_00003" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00000_00003-00014_00001" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00156_00002-00178_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00131_00005-00198_00001" : { + "minimal_similarity" : 0.050505050505050504, + "maximum_similarity" : 0.05291005291005291, + "matched_token_number" : 10 + }, + "00127_00002-00160_00001" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00140_00001-00198_00001" : { + "minimal_similarity" : 0.045454545454545456, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00113_00002-00153_00001" : { + "minimal_similarity" : 0.9940476190476191, + "maximum_similarity" : 1.0, + "matched_token_number" : 167 + }, + "00044_00002-00142_00001" : { + "minimal_similarity" : 0.10457516339869281, + "maximum_similarity" : 0.11764705882352941, + "matched_token_number" : 16 + }, + "00133_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00135_00001" : { + "minimal_similarity" : 0.06521739130434782, + "maximum_similarity" : 0.08108108108108109, + "matched_token_number" : 12 + }, + "00136_00002-00154_00002" : { + "minimal_similarity" : 0.091324200913242, + "maximum_similarity" : 0.12195121951219512, + "matched_token_number" : 20 + }, + "00031_00003-00155_00001" : { + "minimal_similarity" : 0.2, + "maximum_similarity" : 0.21929824561403508, + "matched_token_number" : 25 + }, + "00140_00001-00204_00001" : { + "minimal_similarity" : 0.09774436090225563, + "maximum_similarity" : 0.10833333333333334, + "matched_token_number" : 13 + }, + "00127_00002-00134_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00127_00002-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16071428571428573, + "matched_token_number" : 27 + }, + "00125_00001-00155_00001" : { + "minimal_similarity" : 0.30357142857142855, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00005_00002-00202_00003" : { + "minimal_similarity" : 0.1693121693121693, + "maximum_similarity" : 0.22695035460992907, + "matched_token_number" : 32 + }, + "00005_00002-00202_00002" : { + "minimal_similarity" : 0.21693121693121692, + "maximum_similarity" : 0.2907801418439716, + "matched_token_number" : 41 + }, + "00126_00002-00147_00001" : { + "minimal_similarity" : 0.12413793103448276, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00135_00001-00160_00001" : { + "minimal_similarity" : 0.18478260869565216, + "maximum_similarity" : 0.25, + "matched_token_number" : 34 + }, + "00014_00001-00125_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00133_00001-00202_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00133_00001-00202_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00140_00001-00145_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00097_00002-00111_00001" : { + "minimal_similarity" : 0.07738095238095238, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00154_00002-00192_00002" : { + "minimal_similarity" : 0.15853658536585366, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00097_00002-00186_00004" : { + "minimal_similarity" : 0.13513513513513514, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00154_00002-00192_00001" : { + "minimal_similarity" : 0.1402439024390244, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00137_00002-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00137_00002-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00097_00002-00186_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00204_00001" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.075, + "matched_token_number" : 9 + }, + "00113_00002-00155_00001" : { + "minimal_similarity" : 0.30538922155688625, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00000_00001-00204_00001" : { + "minimal_similarity" : 0.10236220472440945, + "maximum_similarity" : 0.10833333333333334, + "matched_token_number" : 13 + }, + "00155_00001-00184_00003" : { + "minimal_similarity" : 0.224, + "maximum_similarity" : 0.2978723404255319, + "matched_token_number" : 28 + }, + "00095_00003-00156_00003" : { + "minimal_similarity" : 0.04455445544554455, + "maximum_similarity" : 0.05056179775280899, + "matched_token_number" : 9 + }, + "00155_00001-00184_00002" : { + "minimal_similarity" : 0.224, + "maximum_similarity" : 0.2978723404255319, + "matched_token_number" : 28 + }, + "00095_00003-00156_00002" : { + "minimal_similarity" : 0.04455445544554455, + "maximum_similarity" : 0.05056179775280899, + "matched_token_number" : 9 + }, + "00121_00001-00135_00001" : { + "minimal_similarity" : 0.20725388601036268, + "maximum_similarity" : 0.21739130434782608, + "matched_token_number" : 40 + }, + "00130_00002-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00134_00001-00145_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00156_00002-00199_00001" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.12631578947368421, + "matched_token_number" : 12 + }, + "00134_00001-00198_00001" : { + "minimal_similarity" : 0.045454545454545456, + "maximum_similarity" : 0.07692307692307693, + "matched_token_number" : 9 + }, + "00005_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00135_00001-00192_00001" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.05806451612903226, + "matched_token_number" : 9 + }, + "00134_00001-00203_00002" : { + "minimal_similarity" : 0.07586206896551724, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00135_00001-00192_00002" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.06870229007633588, + "matched_token_number" : 9 + }, + "00153_00001-00187_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00140_00001-00177_00003" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00031_00002-00130_00002" : { + "minimal_similarity" : 0.13533834586466165, + "maximum_similarity" : 0.14516129032258066, + "matched_token_number" : 18 + }, + "00013_00002-00204_00001" : { + "minimal_similarity" : 0.06766917293233082, + "maximum_similarity" : 0.075, + "matched_token_number" : 9 + }, + "00000_00001-00000_00002" : { + "minimal_similarity" : 0.7222222222222222, + "maximum_similarity" : 0.8188976377952756, + "matched_token_number" : 104 + }, + "00000_00001-00000_00003" : { + "minimal_similarity" : 0.7094594594594594, + "maximum_similarity" : 0.8267716535433071, + "matched_token_number" : 105 + }, + "00031_00002-00183_00004" : { + "minimal_similarity" : 0.061224489795918366, + "maximum_similarity" : 0.07258064516129033, + "matched_token_number" : 9 + }, + "00000_00001-00000_00005" : { + "minimal_similarity" : 0.6308724832214765, + "maximum_similarity" : 0.7401574803149606, + "matched_token_number" : 94 + }, + "00184_00003-00204_00001" : { + "minimal_similarity" : 0.19166666666666668, + "maximum_similarity" : 0.24468085106382978, + "matched_token_number" : 23 + }, + "00000_00003-00129_00008" : { + "minimal_similarity" : 0.031914893617021274, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00145_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00135_00001-00198_00001" : { + "minimal_similarity" : 0.09595959595959595, + "maximum_similarity" : 0.10326086956521739, + "matched_token_number" : 19 + }, + "00044_00002-00140_00001" : { + "minimal_similarity" : 0.19117647058823528, + "maximum_similarity" : 0.19548872180451127, + "matched_token_number" : 26 + }, + "00000_00002-00156_00003" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00044_00002-00178_00002" : { + "minimal_similarity" : 0.16071428571428573, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00000_00002-00156_00002" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00014_00001-00120_00001" : { + "minimal_similarity" : 0.31333333333333335, + "maximum_similarity" : 0.32413793103448274, + "matched_token_number" : 47 + }, + "00120_00001-00135_00001" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.06206896551724138, + "matched_token_number" : 9 + }, + "00005_00002-00195_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13071895424836602, + "matched_token_number" : 20 + }, + "00005_00002-00195_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13071895424836602, + "matched_token_number" : 20 + }, + "00155_00001-00186_00004" : { + "minimal_similarity" : 0.2222222222222222, + "maximum_similarity" : 0.256, + "matched_token_number" : 32 + }, + "00155_00001-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.216, + "matched_token_number" : 27 + }, + "00013_00002-00194_00001" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.15037593984962405, + "matched_token_number" : 20 + }, + "00044_00002-00126_00002" : { + "minimal_similarity" : 0.1103448275862069, + "maximum_similarity" : 0.11764705882352941, + "matched_token_number" : 16 + }, + "00156_00002-00204_00001" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.075, + "matched_token_number" : 9 + }, + "00000_00003-00202_00002" : { + "minimal_similarity" : 0.1554054054054054, + "maximum_similarity" : 0.16312056737588654, + "matched_token_number" : 23 + }, + "00177_00003-00195_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00000_00003-00202_00003" : { + "minimal_similarity" : 0.13513513513513514, + "maximum_similarity" : 0.14184397163120568, + "matched_token_number" : 20 + }, + "00177_00003-00195_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00131_00005-00160_00001" : { + "minimal_similarity" : 0.0582010582010582, + "maximum_similarity" : 0.08088235294117647, + "matched_token_number" : 11 + }, + "00097_00002-00119_00001" : { + "minimal_similarity" : 0.18666666666666668, + "maximum_similarity" : 0.1891891891891892, + "matched_token_number" : 28 + }, + "00156_00003-00186_00004" : { + "minimal_similarity" : 0.1404494382022472, + "maximum_similarity" : 0.1736111111111111, + "matched_token_number" : 25 + }, + "00077_00001-00184_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.20212765957446807, + "matched_token_number" : 19 + }, + "00156_00003-00186_00002" : { + "minimal_similarity" : 0.10112359550561797, + "maximum_similarity" : 0.10227272727272728, + "matched_token_number" : 18 + }, + "00095_00003-00186_00004" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 12 + }, + "00095_00003-00186_00002" : { + "minimal_similarity" : 0.12871287128712872, + "maximum_similarity" : 0.14772727272727273, + "matched_token_number" : 26 + }, + "00077_00001-00184_00003" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.20212765957446807, + "matched_token_number" : 19 + }, + "00130_00002-00194_00001" : { + "minimal_similarity" : 0.32666666666666666, + "maximum_similarity" : 0.3684210526315789, + "matched_token_number" : 49 + }, + "00136_00002-00138_00001" : { + "minimal_similarity" : 0.1004566210045662, + "maximum_similarity" : 0.1527777777777778, + "matched_token_number" : 22 + }, + "00013_00002-00193_00001" : { + "minimal_similarity" : 0.16363636363636364, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00130_00002-00141_00002" : { + "minimal_similarity" : 0.32666666666666666, + "maximum_similarity" : 0.3684210526315789, + "matched_token_number" : 49 + }, + "00136_00002-00184_00003" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.20212765957446807, + "matched_token_number" : 19 + }, + "00136_00002-00184_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.20212765957446807, + "matched_token_number" : 19 + }, + "00140_00001-00201_00001" : { + "minimal_similarity" : 0.06766917293233082, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00142_00001-00202_00003" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00142_00001-00202_00002" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00013_00002-00140_00001" : { + "minimal_similarity" : 0.08270676691729323, + "maximum_similarity" : 0.08270676691729323, + "matched_token_number" : 11 + }, + "00119_00001-00127_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00005_00002-00031_00003" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.17543859649122806, + "matched_token_number" : 20 + }, + "00000_00001-00005_00002" : { + "minimal_similarity" : 0.06878306878306878, + "maximum_similarity" : 0.10236220472440945, + "matched_token_number" : 13 + }, + "00005_00002-00031_00002" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.07258064516129033, + "matched_token_number" : 9 + }, + "00135_00001-00193_00001" : { + "minimal_similarity" : 0.08152173913043478, + "maximum_similarity" : 0.09090909090909091, + "matched_token_number" : 15 + }, + "00184_00003-00194_00001" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00177_00003-00194_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00031_00002-00135_00001" : { + "minimal_similarity" : 0.10869565217391304, + "maximum_similarity" : 0.16129032258064516, + "matched_token_number" : 20 + }, + "00095_00003-00153_00001" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.13690476190476192, + "matched_token_number" : 23 + }, + "00077_00001-00138_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00120_00001-00130_00002" : { + "minimal_similarity" : 0.18620689655172415, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00133_00001-00140_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00077_00001-00131_00005" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 189 + }, + "00092_00001-00155_00001" : { + "minimal_similarity" : 0.10416666666666667, + "maximum_similarity" : 0.12, + "matched_token_number" : 15 + }, + "00013_00002-00199_00001" : { + "minimal_similarity" : 0.09774436090225563, + "maximum_similarity" : 0.1368421052631579, + "matched_token_number" : 13 + }, + "00121_00001-00134_00001" : { + "minimal_similarity" : 0.11398963730569948, + "maximum_similarity" : 0.18803418803418803, + "matched_token_number" : 22 + }, + "00044_00002-00121_00001" : { + "minimal_similarity" : 0.17098445595854922, + "maximum_similarity" : 0.2426470588235294, + "matched_token_number" : 33 + }, + "00177_00003-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00129_00008-00154_00002" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.18292682926829268, + "matched_token_number" : 30 + }, + "00013_00002-00147_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00000_00002-00137_00002" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00136_00002-00186_00004" : { + "minimal_similarity" : 0.1461187214611872, + "maximum_similarity" : 0.2222222222222222, + "matched_token_number" : 32 + }, + "00044_00002-00177_00003" : { + "minimal_similarity" : 0.16071428571428573, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00142_00001-00195_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 153 + }, + "00136_00002-00186_00002" : { + "minimal_similarity" : 0.1917808219178082, + "maximum_similarity" : 0.23863636363636365, + "matched_token_number" : 42 + }, + "00142_00001-00195_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 153 + }, + "00120_00001-00184_00002" : { + "minimal_similarity" : 0.11724137931034483, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00013_00002-00145_00001" : { + "minimal_similarity" : 0.18452380952380953, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00120_00001-00184_00003" : { + "minimal_similarity" : 0.11724137931034483, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00160_00001-00184_00003" : { + "minimal_similarity" : 0.0661764705882353, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00160_00001-00184_00002" : { + "minimal_similarity" : 0.0661764705882353, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00137_00002-00153_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00013_00002-00198_00001" : { + "minimal_similarity" : 0.14646464646464646, + "maximum_similarity" : 0.21804511278195488, + "matched_token_number" : 29 + }, + "00186_00004-00187_00001" : { + "minimal_similarity" : 0.3333333333333333, + "maximum_similarity" : 0.36363636363636365, + "matched_token_number" : 48 + }, + "00044_00002-00127_00002" : { + "minimal_similarity" : 0.16071428571428573, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00000_00003-00178_00002" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00005_00002-00141_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00111_00001-00113_00002" : { + "minimal_similarity" : 0.9940476190476191, + "maximum_similarity" : 1.0, + "matched_token_number" : 167 + }, + "00000_00002-00138_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00160_00001-00187_00001" : { + "minimal_similarity" : 0.0661764705882353, + "maximum_similarity" : 0.06818181818181818, + "matched_token_number" : 9 + }, + "00200_00002-00203_00002" : { + "minimal_similarity" : 0.07058823529411765, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00092_00001-00153_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00142_00001-00203_00002" : { + "minimal_similarity" : 0.1437908496732026, + "maximum_similarity" : 0.15172413793103448, + "matched_token_number" : 22 + }, + "00077_00001-00133_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00130_00002-00195_00002" : { + "minimal_similarity" : 0.17647058823529413, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00130_00002-00195_00001" : { + "minimal_similarity" : 0.17647058823529413, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00031_00002-00184_00002" : { + "minimal_similarity" : 0.0967741935483871, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00077_00001-00136_00002" : { + "minimal_similarity" : 0.1050228310502283, + "maximum_similarity" : 0.12169312169312169, + "matched_token_number" : 23 + }, + "00031_00002-00184_00003" : { + "minimal_similarity" : 0.0967741935483871, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00147_00001-00187_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00184_00003-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00192_00002" : { + "minimal_similarity" : 0.19594594594594594, + "maximum_similarity" : 0.22137404580152673, + "matched_token_number" : 29 + }, + "00140_00001-00178_00002" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00000_00003-00192_00001" : { + "minimal_similarity" : 0.1870967741935484, + "maximum_similarity" : 0.19594594594594594, + "matched_token_number" : 29 + }, + "00000_00005-00155_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00013_00002-00142_00001" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00135_00001-00197_00001" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.06818181818181818, + "matched_token_number" : 9 + }, + "00134_00001-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.10256410256410256, + "matched_token_number" : 12 + }, + "00120_00001-00186_00004" : { + "minimal_similarity" : 0.1103448275862069, + "maximum_similarity" : 0.1111111111111111, + "matched_token_number" : 16 + }, + "00000_00003-00127_00002" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00142_00001-00197_00001" : { + "minimal_similarity" : 0.08496732026143791, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00120_00001-00186_00002" : { + "minimal_similarity" : 0.09090909090909091, + "maximum_similarity" : 0.1103448275862069, + "matched_token_number" : 16 + }, + "00000_00003-00140_00001" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00134_00001-00140_00001" : { + "minimal_similarity" : 0.37593984962406013, + "maximum_similarity" : 0.42735042735042733, + "matched_token_number" : 50 + }, + "00156_00002-00194_00001" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.07333333333333333, + "matched_token_number" : 11 + }, + "00005_00002-00127_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00077_00001-00135_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.09782608695652174, + "matched_token_number" : 18 + }, + "00130_00002-00202_00002" : { + "minimal_similarity" : 0.07092198581560284, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00135_00001-00203_00002" : { + "minimal_similarity" : 0.059782608695652176, + "maximum_similarity" : 0.07586206896551724, + "matched_token_number" : 11 + }, + "00136_00002-00187_00001" : { + "minimal_similarity" : 0.045662100456621, + "maximum_similarity" : 0.07575757575757576, + "matched_token_number" : 10 + }, + "00130_00002-00197_00001" : { + "minimal_similarity" : 0.09774436090225563, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00013_00002-00196_00001" : { + "minimal_similarity" : 0.027548209366391185, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00130_00002-00202_00003" : { + "minimal_similarity" : 0.07092198581560284, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00156_00002-00193_00001" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00113_00002-00120_00001" : { + "minimal_similarity" : 0.2155688622754491, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00184_00003-00192_00002" : { + "minimal_similarity" : 0.16030534351145037, + "maximum_similarity" : 0.22340425531914893, + "matched_token_number" : 21 + }, + "00184_00003-00192_00001" : { + "minimal_similarity" : 0.09032258064516129, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00133_00001-00178_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00120_00001-00133_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00000_00002-00092_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00121_00001-00137_00002" : { + "minimal_similarity" : 0.7046632124352331, + "maximum_similarity" : 0.8095238095238095, + "matched_token_number" : 136 + }, + "00153_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00203_00002-00204_00001" : { + "minimal_similarity" : 0.2, + "maximum_similarity" : 0.24166666666666667, + "matched_token_number" : 29 + }, + "00121_00001-00198_00001" : { + "minimal_similarity" : 0.20202020202020202, + "maximum_similarity" : 0.20725388601036268, + "matched_token_number" : 40 + }, + "00140_00001-00194_00001" : { + "minimal_similarity" : 0.32666666666666666, + "maximum_similarity" : 0.3684210526315789, + "matched_token_number" : 49 + }, + "00077_00001-00127_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00184_00003-00196_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00135_00001-00142_00001" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.058823529411764705, + "matched_token_number" : 9 + }, + "00000_00005-00141_00002" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00031_00002-00120_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00003-00095_00003" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 12 + }, + "00031_00002-00095_00003" : { + "minimal_similarity" : 0.04455445544554455, + "maximum_similarity" : 0.07258064516129033, + "matched_token_number" : 9 + }, + "00044_00002-00130_00002" : { + "minimal_similarity" : 0.19117647058823528, + "maximum_similarity" : 0.19548872180451127, + "matched_token_number" : 26 + }, + "00136_00002-00195_00002" : { + "minimal_similarity" : 0.0547945205479452, + "maximum_similarity" : 0.0784313725490196, + "matched_token_number" : 12 + }, + "00113_00002-00119_00001" : { + "minimal_similarity" : 0.2634730538922156, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00136_00002-00195_00001" : { + "minimal_similarity" : 0.0547945205479452, + "maximum_similarity" : 0.0784313725490196, + "matched_token_number" : 12 + }, + "00126_00002-00129_00008" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00000_00002-00141_00002" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00201_00001-00204_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00178_00002-00184_00003" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00178_00002-00184_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00111_00001-00127_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00137_00002-00155_00001" : { + "minimal_similarity" : 0.30357142857142855, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00014_00001-00129_00008" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.2, + "matched_token_number" : 30 + }, + "00142_00001-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00095_00003-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00113_00002-00186_00004" : { + "minimal_similarity" : 0.16766467065868262, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00140_00001-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00177_00003-00178_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00000_00001-00095_00003" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.18110236220472442, + "matched_token_number" : 23 + }, + "00138_00001-00204_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 10 + }, + "00126_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00155_00001" : { + "minimal_similarity" : 0.4189189189189189, + "maximum_similarity" : 0.496, + "matched_token_number" : 62 + }, + "00000_00001-00120_00001" : { + "minimal_similarity" : 0.1724137931034483, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00113_00002-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16167664670658682, + "matched_token_number" : 27 + }, + "00031_00002-00192_00002" : { + "minimal_similarity" : 0.09923664122137404, + "maximum_similarity" : 0.10483870967741936, + "matched_token_number" : 13 + }, + "00160_00001-00201_00001" : { + "minimal_similarity" : 0.0661764705882353, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00031_00002-00192_00001" : { + "minimal_similarity" : 0.1032258064516129, + "maximum_similarity" : 0.12903225806451613, + "matched_token_number" : 16 + }, + "00077_00001-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00131_00005-00184_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.20212765957446807, + "matched_token_number" : 19 + }, + "00131_00005-00184_00003" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.20212765957446807, + "matched_token_number" : 19 + }, + "00192_00001-00195_00002" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.08496732026143791, + "matched_token_number" : 13 + }, + "00192_00001-00195_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.08496732026143791, + "matched_token_number" : 13 + }, + "00142_00001-00160_00001" : { + "minimal_similarity" : 0.058823529411764705, + "maximum_similarity" : 0.0661764705882353, + "matched_token_number" : 9 + }, + "00000_00005-00154_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00129_00008-00130_00002" : { + "minimal_similarity" : 0.07801418439716312, + "maximum_similarity" : 0.16541353383458646, + "matched_token_number" : 22 + }, + "00131_00005-00197_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07575757575757576, + "matched_token_number" : 10 + }, + "00005_00002-00119_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00186_00004-00196_00001" : { + "minimal_similarity" : 0.030303030303030304, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00000_00001-00154_00002" : { + "minimal_similarity" : 0.0975609756097561, + "maximum_similarity" : 0.12598425196850394, + "matched_token_number" : 16 + }, + "00000_00003-00044_00002" : { + "minimal_similarity" : 0.2702702702702703, + "maximum_similarity" : 0.29411764705882354, + "matched_token_number" : 40 + }, + "00119_00001-00160_00001" : { + "minimal_similarity" : 0.08, + "maximum_similarity" : 0.08823529411764706, + "matched_token_number" : 12 + }, + "00119_00001-00131_00005" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00120_00001-00153_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00092_00001-00131_00005" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00000_00002-00044_00002" : { + "minimal_similarity" : 0.2777777777777778, + "maximum_similarity" : 0.29411764705882354, + "matched_token_number" : 40 + }, + "00134_00001-00195_00002" : { + "minimal_similarity" : 0.16339869281045752, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00014_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00134_00001-00195_00001" : { + "minimal_similarity" : 0.16339869281045752, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00077_00001-00194_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00000_00005-00095_00003" : { + "minimal_similarity" : 0.09900990099009901, + "maximum_similarity" : 0.1342281879194631, + "matched_token_number" : 20 + }, + "00194_00001-00195_00001" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00194_00001-00195_00002" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00000_00005-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00137_00002-00193_00001" : { + "minimal_similarity" : 0.07142857142857142, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00000_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00125_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00077_00001-00092_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00014_00001-00044_00002" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00111_00001-00160_00001" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00031_00002-00197_00001" : { + "minimal_similarity" : 0.13636363636363635, + "maximum_similarity" : 0.14516129032258066, + "matched_token_number" : 18 + }, + "00119_00001-00194_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 150 + }, + "00133_00001-00197_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00177_00003-00199_00001" : { + "minimal_similarity" : 0.05952380952380952, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00000_00003-00138_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00187_00001-00194_00001" : { + "minimal_similarity" : 0.08666666666666667, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00142_00001-00178_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00111_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00077_00001-00130_00002" : { + "minimal_similarity" : 0.06349206349206349, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00111_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00125_00001-00130_00002" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00111_00001-00199_00001" : { + "minimal_similarity" : 0.05952380952380952, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00141_00002-00192_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.08666666666666667, + "matched_token_number" : 13 + }, + "00141_00002-00192_00002" : { + "minimal_similarity" : 0.11333333333333333, + "maximum_similarity" : 0.1297709923664122, + "matched_token_number" : 17 + }, + "00156_00002-00198_00001" : { + "minimal_similarity" : 0.09090909090909091, + "maximum_similarity" : 0.10112359550561797, + "matched_token_number" : 18 + }, + "00153_00001-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00131_00005-00155_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.152, + "matched_token_number" : 19 + }, + "00077_00001-00199_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.09473684210526316, + "matched_token_number" : 9 + }, + "00184_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00192_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00192_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00119_00001-00136_00002" : { + "minimal_similarity" : 0.1004566210045662, + "maximum_similarity" : 0.14666666666666667, + "matched_token_number" : 22 + }, + "00126_00002-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00184_00003" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00184_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00003-00184_00002" : { + "minimal_similarity" : 0.23684210526315788, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00044_00002-00194_00001" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00031_00003-00184_00003" : { + "minimal_similarity" : 0.23684210526315788, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00031_00002-00031_00003" : { + "minimal_similarity" : 0.1935483870967742, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00013_00002-00127_00002" : { + "minimal_similarity" : 0.18452380952380953, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00113_00002-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.0658682634730539, + "matched_token_number" : 11 + }, + "00113_00002-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.0658682634730539, + "matched_token_number" : 11 + }, + "00125_00001-00126_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00202_00002-00202_00003" : { + "minimal_similarity" : 0.9645390070921985, + "maximum_similarity" : 0.9645390070921985, + "matched_token_number" : 136 + }, + "00197_00001-00198_00001" : { + "minimal_similarity" : 0.14646464646464646, + "maximum_similarity" : 0.2196969696969697, + "matched_token_number" : 29 + }, + "00120_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00092_00001-00136_00002" : { + "minimal_similarity" : 0.1004566210045662, + "maximum_similarity" : 0.1527777777777778, + "matched_token_number" : 22 + }, + "00095_00003-00184_00003" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00156_00003-00194_00001" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.07333333333333333, + "matched_token_number" : 11 + }, + "00121_00001-00130_00002" : { + "minimal_similarity" : 0.23834196891191708, + "maximum_similarity" : 0.3458646616541353, + "matched_token_number" : 46 + }, + "00095_00003-00184_00002" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00111_00001-00119_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00154_00002-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.07317073170731707, + "matched_token_number" : 12 + }, + "00000_00003-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00155_00001-00183_00004" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.112, + "matched_token_number" : 14 + }, + "00000_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00156_00002-00177_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00129_00008-00198_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00044_00002-00135_00001" : { + "minimal_similarity" : 0.10869565217391304, + "maximum_similarity" : 0.14705882352941177, + "matched_token_number" : 20 + }, + "00121_00001-00126_00002" : { + "minimal_similarity" : 0.17098445595854922, + "maximum_similarity" : 0.22758620689655173, + "matched_token_number" : 33 + }, + "00013_00002-00156_00002" : { + "minimal_similarity" : 0.056179775280898875, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00013_00002-00156_00003" : { + "minimal_similarity" : 0.056179775280898875, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00156_00003-00193_00001" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00127_00002-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00127_00002-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00178_00002-00201_00001" : { + "minimal_similarity" : 0.05357142857142857, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00125_00001-00127_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00000_00001-00197_00001" : { + "minimal_similarity" : 0.25757575757575757, + "maximum_similarity" : 0.2677165354330709, + "matched_token_number" : 34 + }, + "00136_00002-00153_00001" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00000_00003-00197_00001" : { + "minimal_similarity" : 0.20270270270270271, + "maximum_similarity" : 0.22727272727272727, + "matched_token_number" : 30 + }, + "00113_00002-00178_00002" : { + "minimal_similarity" : 0.9940476190476191, + "maximum_similarity" : 1.0, + "matched_token_number" : 167 + }, + "00192_00002-00204_00001" : { + "minimal_similarity" : 0.183206106870229, + "maximum_similarity" : 0.2, + "matched_token_number" : 24 + }, + "00195_00002-00202_00002" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00195_00002-00202_00003" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00133_00001-00138_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00126_00002-00153_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00005_00002-00203_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13793103448275862, + "matched_token_number" : 20 + }, + "00031_00003-00154_00002" : { + "minimal_similarity" : 0.14634146341463414, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00013_00002-00097_00002" : { + "minimal_similarity" : 0.06756756756756757, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00193_00001-00197_00001" : { + "minimal_similarity" : 0.11515151515151516, + "maximum_similarity" : 0.14393939393939395, + "matched_token_number" : 19 + }, + "00125_00001-00134_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00121_00001-00155_00001" : { + "minimal_similarity" : 0.3005181347150259, + "maximum_similarity" : 0.464, + "matched_token_number" : 58 + }, + "00156_00003-00199_00001" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.12631578947368421, + "matched_token_number" : 12 + }, + "00187_00001-00198_00001" : { + "minimal_similarity" : 0.14646464646464646, + "maximum_similarity" : 0.2196969696969697, + "matched_token_number" : 29 + }, + "00013_00002-00119_00001" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.15037593984962405, + "matched_token_number" : 20 + }, + "00000_00001-00129_00008" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.09448818897637795, + "matched_token_number" : 12 + }, + "00119_00001-00135_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.24, + "matched_token_number" : 36 + }, + "00044_00002-00193_00001" : { + "minimal_similarity" : 0.2606060606060606, + "maximum_similarity" : 0.3161764705882353, + "matched_token_number" : 43 + }, + "00092_00001-00127_00002" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00031_00003-00183_00004" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.18421052631578946, + "matched_token_number" : 21 + }, + "00154_00002-00194_00001" : { + "minimal_similarity" : 0.2682926829268293, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00126_00002-00187_00001" : { + "minimal_similarity" : 0.0896551724137931, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00097_00002-00193_00001" : { + "minimal_similarity" : 0.05454545454545454, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00129_00008-00193_00001" : { + "minimal_similarity" : 0.031914893617021274, + "maximum_similarity" : 0.05454545454545454, + "matched_token_number" : 9 + }, + "00013_00002-00126_00002" : { + "minimal_similarity" : 0.06896551724137931, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00044_00002-00160_00001" : { + "minimal_similarity" : 0.09558823529411764, + "maximum_similarity" : 0.09558823529411764, + "matched_token_number" : 13 + }, + "00000_00002-00184_00002" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00031_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00002-00184_00003" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00127_00002-00199_00001" : { + "minimal_similarity" : 0.05952380952380952, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00000_00001-00184_00003" : { + "minimal_similarity" : 0.11023622047244094, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00000_00005-00184_00003" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00005_00002-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00184_00002" : { + "minimal_similarity" : 0.11023622047244094, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00000_00005-00184_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00127_00002-00186_00004" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00156_00003-00160_00001" : { + "minimal_similarity" : 0.10112359550561797, + "maximum_similarity" : 0.1323529411764706, + "matched_token_number" : 18 + }, + "00145_00001-00201_00001" : { + "minimal_similarity" : 0.05357142857142857, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00156_00002-00160_00001" : { + "minimal_similarity" : 0.10112359550561797, + "maximum_similarity" : 0.1323529411764706, + "matched_token_number" : 18 + }, + "00183_00004-00193_00001" : { + "minimal_similarity" : 0.05454545454545454, + "maximum_similarity" : 0.061224489795918366, + "matched_token_number" : 9 + }, + "00125_00001-00194_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00183_00004-00199_00001" : { + "minimal_similarity" : 0.061224489795918366, + "maximum_similarity" : 0.09473684210526316, + "matched_token_number" : 9 + }, + "00142_00001-00177_00003" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00000_00005-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00129_00008-00194_00001" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.2, + "matched_token_number" : 30 + }, + "00000_00002-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00135_00001-00177_00003" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.21428571428571427, + "matched_token_number" : 36 + }, + "00111_00001-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.22023809523809523, + "matched_token_number" : 37 + }, + "00186_00002-00204_00001" : { + "minimal_similarity" : 0.13636363636363635, + "maximum_similarity" : 0.2, + "matched_token_number" : 24 + }, + "00127_00002-00193_00001" : { + "minimal_similarity" : 0.07142857142857142, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00014_00001-00138_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00153_00001-00204_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00145_00001-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00000_00005-00201_00001" : { + "minimal_similarity" : 0.06040268456375839, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00013_00002-00113_00002" : { + "minimal_similarity" : 0.18562874251497005, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00121_00001-00156_00003" : { + "minimal_similarity" : 0.05699481865284974, + "maximum_similarity" : 0.06179775280898876, + "matched_token_number" : 11 + }, + "00138_00001-00145_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00121_00001-00156_00002" : { + "minimal_similarity" : 0.05699481865284974, + "maximum_similarity" : 0.06179775280898876, + "matched_token_number" : 11 + }, + "00125_00001-00135_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.21428571428571427, + "matched_token_number" : 36 + }, + "00141_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00187_00001-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00141_00002-00197_00001" : { + "minimal_similarity" : 0.08666666666666667, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00193_00001-00198_00001" : { + "minimal_similarity" : 0.09090909090909091, + "maximum_similarity" : 0.10909090909090909, + "matched_token_number" : 18 + }, + "00127_00002-00194_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00014_00001-00133_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00125_00001-00193_00001" : { + "minimal_similarity" : 0.07142857142857142, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00183_00004-00198_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00119_00001-00195_00002" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00119_00001-00195_00001" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00133_00001-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.22023809523809523, + "matched_token_number" : 37 + }, + "00154_00002-00160_00001" : { + "minimal_similarity" : 0.17682926829268292, + "maximum_similarity" : 0.21323529411764705, + "matched_token_number" : 29 + }, + "00134_00001-00160_00001" : { + "minimal_similarity" : 0.16176470588235295, + "maximum_similarity" : 0.18803418803418803, + "matched_token_number" : 22 + }, + "00095_00003-00113_00002" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.1377245508982036, + "matched_token_number" : 23 + }, + "00183_00004-00186_00004" : { + "minimal_similarity" : 0.2585034013605442, + "maximum_similarity" : 0.2638888888888889, + "matched_token_number" : 38 + }, + "00125_00001-00199_00001" : { + "minimal_similarity" : 0.05952380952380952, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00183_00004-00186_00002" : { + "minimal_similarity" : 0.056818181818181816, + "maximum_similarity" : 0.06802721088435375, + "matched_token_number" : 10 + }, + "00097_00002-00154_00002" : { + "minimal_similarity" : 0.07926829268292683, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00111_00001-00193_00001" : { + "minimal_similarity" : 0.07142857142857142, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00154_00002-00198_00001" : { + "minimal_similarity" : 0.14646464646464646, + "maximum_similarity" : 0.17682926829268292, + "matched_token_number" : 29 + }, + "00113_00002-00203_00002" : { + "minimal_similarity" : 0.1377245508982036, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00014_00001-00192_00002" : { + "minimal_similarity" : 0.11333333333333333, + "maximum_similarity" : 0.1297709923664122, + "matched_token_number" : 17 + }, + "00014_00001-00192_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.08666666666666667, + "matched_token_number" : 13 + }, + "00127_00002-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.22023809523809523, + "matched_token_number" : 37 + }, + "00145_00001-00147_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00178_00002-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00195_00001" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00014_00001-00077_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00186_00002-00187_00001" : { + "minimal_similarity" : 0.3125, + "maximum_similarity" : 0.4166666666666667, + "matched_token_number" : 55 + }, + "00138_00001-00203_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00120_00001-00154_00002" : { + "minimal_similarity" : 0.15853658536585366, + "maximum_similarity" : 0.1793103448275862, + "matched_token_number" : 26 + }, + "00111_00001-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16071428571428573, + "matched_token_number" : 27 + }, + "00138_00001-00140_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00195_00002" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00111_00001-00186_00004" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00077_00001-00160_00001" : { + "minimal_similarity" : 0.0582010582010582, + "maximum_similarity" : 0.08088235294117647, + "matched_token_number" : 11 + }, + "00000_00001-00031_00002" : { + "minimal_similarity" : 0.14960629921259844, + "maximum_similarity" : 0.1532258064516129, + "matched_token_number" : 19 + }, + "00192_00001-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00031_00003" : { + "minimal_similarity" : 0.2440944881889764, + "maximum_similarity" : 0.2719298245614035, + "matched_token_number" : 31 + }, + "00126_00002-00195_00001" : { + "minimal_similarity" : 0.9477124183006536, + "maximum_similarity" : 1.0, + "matched_token_number" : 145 + }, + "00126_00002-00195_00002" : { + "minimal_similarity" : 0.9477124183006536, + "maximum_similarity" : 1.0, + "matched_token_number" : 145 + }, + "00031_00003-00141_00002" : { + "minimal_similarity" : 0.16, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00125_00001-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.22023809523809523, + "matched_token_number" : 37 + }, + "00131_00005-00192_00002" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07633587786259542, + "matched_token_number" : 10 + }, + "00077_00001-00156_00002" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.05056179775280899, + "matched_token_number" : 9 + }, + "00131_00005-00192_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.06451612903225806, + "matched_token_number" : 10 + }, + "00077_00001-00156_00003" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.05056179775280899, + "matched_token_number" : 9 + }, + "00129_00008-00135_00001" : { + "minimal_similarity" : 0.08156028368794327, + "maximum_similarity" : 0.125, + "matched_token_number" : 23 + }, + "00014_00001-00137_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00119_00001-00199_00001" : { + "minimal_similarity" : 0.06666666666666667, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00156_00003-00198_00001" : { + "minimal_similarity" : 0.09090909090909091, + "maximum_similarity" : 0.10112359550561797, + "matched_token_number" : 18 + }, + "00192_00001-00196_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.05806451612903226, + "matched_token_number" : 9 + }, + "00000_00002-00014_00001" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00141_00002-00155_00001" : { + "minimal_similarity" : 0.3933333333333333, + "maximum_similarity" : 0.472, + "matched_token_number" : 59 + }, + "00092_00001-00130_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00140_00001-00160_00001" : { + "minimal_similarity" : 0.16911764705882354, + "maximum_similarity" : 0.17293233082706766, + "matched_token_number" : 23 + }, + "00000_00001-00192_00001" : { + "minimal_similarity" : 0.2129032258064516, + "maximum_similarity" : 0.25984251968503935, + "matched_token_number" : 33 + }, + "00000_00001-00192_00002" : { + "minimal_similarity" : 0.2595419847328244, + "maximum_similarity" : 0.2677165354330709, + "matched_token_number" : 34 + }, + "00000_00005-00140_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00141_00002-00153_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00031_00003-00142_00001" : { + "minimal_similarity" : 0.0915032679738562, + "maximum_similarity" : 0.12280701754385964, + "matched_token_number" : 14 + }, + "00126_00002-00192_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.0896551724137931, + "matched_token_number" : 13 + }, + "00031_00003-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00044_00002-00198_00001" : { + "minimal_similarity" : 0.08080808080808081, + "maximum_similarity" : 0.11764705882352941, + "matched_token_number" : 16 + }, + "00154_00002-00199_00001" : { + "minimal_similarity" : 0.06097560975609756, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00113_00002-00202_00003" : { + "minimal_similarity" : 0.1317365269461078, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00126_00002-00192_00002" : { + "minimal_similarity" : 0.11724137931034483, + "maximum_similarity" : 0.1297709923664122, + "matched_token_number" : 17 + }, + "00031_00002-00155_00001" : { + "minimal_similarity" : 0.088, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00113_00002-00202_00002" : { + "minimal_similarity" : 0.1317365269461078, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00097_00002-00198_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00186_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00013_00002-00121_00001" : { + "minimal_similarity" : 0.17616580310880828, + "maximum_similarity" : 0.2556390977443609, + "matched_token_number" : 34 + }, + "00138_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00141_00002-00154_00002" : { + "minimal_similarity" : 0.2682926829268293, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00031_00003-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00111_00001-00194_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00005_00002-00156_00003" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.05056179775280899, + "matched_token_number" : 9 + }, + "00005_00002-00156_00002" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.05056179775280899, + "matched_token_number" : 9 + }, + "00129_00008-00134_00001" : { + "minimal_similarity" : 0.08865248226950355, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00031_00002-00154_00002" : { + "minimal_similarity" : 0.06707317073170732, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00131_00005-00193_00001" : { + "minimal_similarity" : 0.12169312169312169, + "maximum_similarity" : 0.1393939393939394, + "matched_token_number" : 23 + }, + "00183_00004-00194_00001" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.07482993197278912, + "matched_token_number" : 11 + }, + "00097_00002-00197_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00031_00002" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00014_00001-00136_00002" : { + "minimal_similarity" : 0.1004566210045662, + "maximum_similarity" : 0.14666666666666667, + "matched_token_number" : 22 + }, + "00014_00001-00031_00003" : { + "minimal_similarity" : 0.16, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00044_00002-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00178_00002-00202_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00121_00001-00125_00001" : { + "minimal_similarity" : 0.7046632124352331, + "maximum_similarity" : 0.8095238095238095, + "matched_token_number" : 136 + }, + "00125_00001-00197_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00130_00002-00156_00003" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00119_00001-00198_00001" : { + "minimal_similarity" : 0.10606060606060606, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00134_00001-00135_00001" : { + "minimal_similarity" : 0.10869565217391304, + "maximum_similarity" : 0.17094017094017094, + "matched_token_number" : 20 + }, + "00130_00002-00156_00002" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00184_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00131_00005-00156_00002" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.05056179775280899, + "matched_token_number" : 9 + }, + "00196_00001-00199_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.09473684210526316, + "matched_token_number" : 9 + }, + "00131_00005-00156_00003" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.05056179775280899, + "matched_token_number" : 9 + }, + "00031_00002-00193_00001" : { + "minimal_similarity" : 0.05454545454545454, + "maximum_similarity" : 0.07258064516129033, + "matched_token_number" : 9 + }, + "00197_00001-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00193_00001-00194_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.08, + "matched_token_number" : 12 + }, + "00113_00002-00187_00001" : { + "minimal_similarity" : 0.1377245508982036, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00000_00005-00204_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00003-00113_00002" : { + "minimal_similarity" : 0.1437125748502994, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00097_00002-00156_00002" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00097_00002-00156_00003" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00120_00001-00160_00001" : { + "minimal_similarity" : 0.06206896551724138, + "maximum_similarity" : 0.0661764705882353, + "matched_token_number" : 9 + }, + "00111_00001-00121_00001" : { + "minimal_similarity" : 0.7046632124352331, + "maximum_similarity" : 0.8095238095238095, + "matched_token_number" : 136 + }, + "00198_00001-00199_00001" : { + "minimal_similarity" : 0.045454545454545456, + "maximum_similarity" : 0.09473684210526316, + "matched_token_number" : 9 + }, + "00155_00001-00201_00001" : { + "minimal_similarity" : 0.15384615384615385, + "maximum_similarity" : 0.16, + "matched_token_number" : 20 + }, + "00097_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00121_00001" : { + "minimal_similarity" : 0.12435233160621761, + "maximum_similarity" : 0.1889763779527559, + "matched_token_number" : 24 + }, + "00000_00001-00187_00001" : { + "minimal_similarity" : 0.25757575757575757, + "maximum_similarity" : 0.2677165354330709, + "matched_token_number" : 34 + }, + "00138_00001-00141_00002" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00005-00147_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00095_00003-00111_00001" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.13690476190476192, + "matched_token_number" : 23 + }, + "00125_00001-00131_00005" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00077_00001-00121_00001" : { + "minimal_similarity" : 0.09844559585492228, + "maximum_similarity" : 0.10052910052910052, + "matched_token_number" : 19 + }, + "00000_00002-00147_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00131_00005" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00130_00002-00183_00004" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 14 + }, + "00121_00001-00192_00002" : { + "minimal_similarity" : 0.11917098445595854, + "maximum_similarity" : 0.17557251908396945, + "matched_token_number" : 23 + }, + "00121_00001-00192_00001" : { + "minimal_similarity" : 0.12953367875647667, + "maximum_similarity" : 0.16129032258064516, + "matched_token_number" : 25 + }, + "00178_00002-00202_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00187_00001-00195_00002" : { + "minimal_similarity" : 0.08496732026143791, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00186_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00187_00001-00195_00001" : { + "minimal_similarity" : 0.08496732026143791, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00192_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00129_00008-00131_00005" : { + "minimal_similarity" : 0.03546099290780142, + "maximum_similarity" : 0.05291005291005291, + "matched_token_number" : 10 + }, + "00077_00001-00195_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13071895424836602, + "matched_token_number" : 20 + }, + "00077_00001-00195_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13071895424836602, + "matched_token_number" : 20 + }, + "00120_00001-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00125_00001-00136_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00014_00001-00197_00001" : { + "minimal_similarity" : 0.08666666666666667, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00000_00005-00113_00002" : { + "minimal_similarity" : 0.0658682634730539, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00193_00001-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00003-00145_00001" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00000_00002-00113_00002" : { + "minimal_similarity" : 0.11976047904191617, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00120_00001-00192_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.0896551724137931, + "matched_token_number" : 13 + }, + "00120_00001-00192_00002" : { + "minimal_similarity" : 0.11724137931034483, + "maximum_similarity" : 0.1297709923664122, + "matched_token_number" : 17 + }, + "00031_00002-00198_00001" : { + "minimal_similarity" : 0.12626262626262627, + "maximum_similarity" : 0.20161290322580644, + "matched_token_number" : 25 + }, + "00095_00003-00177_00003" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.13690476190476192, + "matched_token_number" : 23 + }, + "00156_00003-00197_00001" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.06818181818181818, + "matched_token_number" : 9 + }, + "00186_00004-00195_00001" : { + "minimal_similarity" : 0.10457516339869281, + "maximum_similarity" : 0.1111111111111111, + "matched_token_number" : 16 + }, + "00186_00004-00195_00002" : { + "minimal_similarity" : 0.10457516339869281, + "maximum_similarity" : 0.1111111111111111, + "matched_token_number" : 16 + }, + "00119_00001-00137_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00000_00001-00153_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00113_00002-00147_00001" : { + "minimal_similarity" : 0.08982035928143713, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00001-00126_00002" : { + "minimal_similarity" : 0.1724137931034483, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00195_00001-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00137_00002-00194_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00133_00001-00135_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.21428571428571427, + "matched_token_number" : 36 + }, + "00113_00002-00204_00001" : { + "minimal_similarity" : 0.1377245508982036, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00160_00001-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.08088235294117647, + "matched_token_number" : 11 + }, + "00147_00001-00177_00003" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00002-00142_00001" : { + "minimal_similarity" : 0.12418300653594772, + "maximum_similarity" : 0.13194444444444445, + "matched_token_number" : 19 + }, + "00077_00001-00126_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13793103448275862, + "matched_token_number" : 20 + }, + "00000_00005-00142_00001" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.06711409395973154, + "matched_token_number" : 10 + }, + "00120_00001-00125_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00121_00001-00197_00001" : { + "minimal_similarity" : 0.12953367875647667, + "maximum_similarity" : 0.1893939393939394, + "matched_token_number" : 25 + }, + "00031_00003-00204_00001" : { + "minimal_similarity" : 0.19166666666666668, + "maximum_similarity" : 0.20175438596491227, + "matched_token_number" : 23 + }, + "00136_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00005_00002-00153_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00005_00002-00113_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.11377245508982035, + "matched_token_number" : 19 + }, + "00192_00001-00194_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.08666666666666667, + "matched_token_number" : 13 + }, + "00127_00002-00155_00001" : { + "minimal_similarity" : 0.30357142857142855, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00013_00002-00155_00001" : { + "minimal_similarity" : 0.22556390977443608, + "maximum_similarity" : 0.24, + "matched_token_number" : 30 + }, + "00120_00001-00194_00001" : { + "minimal_similarity" : 0.31333333333333335, + "maximum_similarity" : 0.32413793103448274, + "matched_token_number" : 47 + }, + "00201_00001-00203_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00145_00001-00177_00003" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00097_00002-00127_00002" : { + "minimal_similarity" : 0.07738095238095238, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00031_00003-00147_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.08771929824561403, + "matched_token_number" : 10 + }, + "00186_00004-00197_00001" : { + "minimal_similarity" : 0.3333333333333333, + "maximum_similarity" : 0.36363636363636365, + "matched_token_number" : 48 + }, + "00136_00002-00199_00001" : { + "minimal_similarity" : 0.0410958904109589, + "maximum_similarity" : 0.09473684210526316, + "matched_token_number" : 9 + }, + "00160_00001-00202_00002" : { + "minimal_similarity" : 0.1347517730496454, + "maximum_similarity" : 0.13970588235294118, + "matched_token_number" : 19 + }, + "00120_00001-00197_00001" : { + "minimal_similarity" : 0.0896551724137931, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00147_00001-00204_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 10 + }, + "00111_00001-00153_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00156_00003-00192_00002" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.06870229007633588, + "matched_token_number" : 9 + }, + "00156_00003-00195_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00156_00003-00195_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00155_00001-00178_00002" : { + "minimal_similarity" : 0.30357142857142855, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00156_00003-00192_00001" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.05806451612903226, + "matched_token_number" : 9 + }, + "00138_00001-00178_00002" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00125_00001-00160_00001" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00160_00001-00202_00003" : { + "minimal_similarity" : 0.1347517730496454, + "maximum_similarity" : 0.13970588235294118, + "matched_token_number" : 19 + }, + "00133_00001-00137_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00121_00001-00199_00001" : { + "minimal_similarity" : 0.05181347150259067, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00127_00002-00192_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00127_00002-00192_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00129_00008-00195_00001" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.0784313725490196, + "matched_token_number" : 12 + }, + "00126_00002-00155_00001" : { + "minimal_similarity" : 0.2482758620689655, + "maximum_similarity" : 0.288, + "matched_token_number" : 36 + }, + "00129_00008-00195_00002" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.0784313725490196, + "matched_token_number" : 12 + }, + "00136_00002-00160_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00153_00001-00203_00002" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00121_00001-00127_00002" : { + "minimal_similarity" : 0.7046632124352331, + "maximum_similarity" : 0.8095238095238095, + "matched_token_number" : 136 + }, + "00092_00001-00193_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00193_00001-00196_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.05454545454545454, + "matched_token_number" : 9 + }, + "00137_00002-00160_00001" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00031_00002-00121_00001" : { + "minimal_similarity" : 0.05699481865284974, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00141_00002-00195_00001" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00044_00002-00134_00001" : { + "minimal_similarity" : 0.2426470588235294, + "maximum_similarity" : 0.28205128205128205, + "matched_token_number" : 33 + }, + "00141_00002-00195_00002" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00111_00001-00155_00001" : { + "minimal_similarity" : 0.30357142857142855, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00097_00002-00129_00008" : { + "minimal_similarity" : 0.05319148936170213, + "maximum_similarity" : 0.10135135135135136, + "matched_token_number" : 15 + }, + "00153_00001-00201_00001" : { + "minimal_similarity" : 0.05357142857142857, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00147_00001-00202_00003" : { + "minimal_similarity" : 0.08333333333333333, + "maximum_similarity" : 0.0851063829787234, + "matched_token_number" : 12 + }, + "00147_00001-00202_00002" : { + "minimal_similarity" : 0.08333333333333333, + "maximum_similarity" : 0.0851063829787234, + "matched_token_number" : 12 + }, + "00044_00002-00077_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.13970588235294118, + "matched_token_number" : 19 + }, + "00178_00002-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00000_00002-00140_00001" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00121_00001-00160_00001" : { + "minimal_similarity" : 0.15544041450777202, + "maximum_similarity" : 0.22058823529411764, + "matched_token_number" : 30 + }, + "00141_00002-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.08, + "matched_token_number" : 12 + }, + "00000_00005-00202_00002" : { + "minimal_similarity" : 0.15436241610738255, + "maximum_similarity" : 0.16312056737588654, + "matched_token_number" : 23 + }, + "00092_00001-00129_00008" : { + "minimal_similarity" : 0.031914893617021274, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00000_00005-00202_00003" : { + "minimal_similarity" : 0.1342281879194631, + "maximum_similarity" : 0.14184397163120568, + "matched_token_number" : 20 + }, + "00192_00002-00203_00002" : { + "minimal_similarity" : 0.31724137931034485, + "maximum_similarity" : 0.3511450381679389, + "matched_token_number" : 46 + }, + "00194_00001-00199_00001" : { + "minimal_similarity" : 0.06666666666666667, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00077_00001-00198_00001" : { + "minimal_similarity" : 0.050505050505050504, + "maximum_similarity" : 0.05291005291005291, + "matched_token_number" : 10 + }, + "00031_00002-00195_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00131_00005-00154_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.12804878048780488, + "matched_token_number" : 21 + }, + "00031_00002-00195_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00111_00001-00126_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00187_00001-00197_00001" : { + "minimal_similarity" : 0.9772727272727273, + "maximum_similarity" : 0.9772727272727273, + "matched_token_number" : 129 + }, + "00000_00002-00111_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00125_00001-00133_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00119_00001-00134_00001" : { + "minimal_similarity" : 0.26, + "maximum_similarity" : 0.3333333333333333, + "matched_token_number" : 39 + }, + "00005_00002-00092_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00013_00002-00184_00003" : { + "minimal_similarity" : 0.09774436090225563, + "maximum_similarity" : 0.13829787234042554, + "matched_token_number" : 13 + }, + "00013_00002-00184_00002" : { + "minimal_similarity" : 0.09774436090225563, + "maximum_similarity" : 0.13829787234042554, + "matched_token_number" : 13 + }, + "00044_00002-00136_00002" : { + "minimal_similarity" : 0.1780821917808219, + "maximum_similarity" : 0.2867647058823529, + "matched_token_number" : 39 + }, + "00129_00008-00197_00001" : { + "minimal_similarity" : 0.07446808510638298, + "maximum_similarity" : 0.1590909090909091, + "matched_token_number" : 21 + }, + "00000_00005-00145_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00147_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00095_00003-00204_00001" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.1, + "matched_token_number" : 12 + }, + "00129_00008-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00077_00001-00197_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07575757575757576, + "matched_token_number" : 10 + }, + "00126_00002-00154_00002" : { + "minimal_similarity" : 0.15853658536585366, + "maximum_similarity" : 0.1793103448275862, + "matched_token_number" : 26 + }, + "00134_00001-00138_00001" : { + "minimal_similarity" : 0.0763888888888889, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00092_00001-00194_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00005-00111_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00184_00002-00204_00001" : { + "minimal_similarity" : 0.19166666666666668, + "maximum_similarity" : 0.24468085106382978, + "matched_token_number" : 23 + }, + "00097_00002-00120_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00131_00005" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00136_00002-00192_00001" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.12258064516129032, + "matched_token_number" : 19 + }, + "00136_00002-00192_00002" : { + "minimal_similarity" : 0.045662100456621, + "maximum_similarity" : 0.07633587786259542, + "matched_token_number" : 10 + }, + "00120_00001-00195_00002" : { + "minimal_similarity" : 0.9477124183006536, + "maximum_similarity" : 1.0, + "matched_token_number" : 145 + }, + "00120_00001-00195_00001" : { + "minimal_similarity" : 0.9477124183006536, + "maximum_similarity" : 1.0, + "matched_token_number" : 145 + }, + "00137_00002-00192_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00186_00004-00198_00001" : { + "minimal_similarity" : 0.06060606060606061, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 12 + }, + "00000_00001-00156_00002" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.07086614173228346, + "matched_token_number" : 9 + }, + "00129_00008-00160_00001" : { + "minimal_similarity" : 0.031914893617021274, + "maximum_similarity" : 0.0661764705882353, + "matched_token_number" : 9 + }, + "00000_00001-00156_00003" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.07086614173228346, + "matched_token_number" : 9 + }, + "00194_00001-00197_00001" : { + "minimal_similarity" : 0.08666666666666667, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00187_00001-00192_00001" : { + "minimal_similarity" : 0.5806451612903226, + "maximum_similarity" : 0.6818181818181818, + "matched_token_number" : 90 + }, + "00187_00001-00192_00002" : { + "minimal_similarity" : 0.49242424242424243, + "maximum_similarity" : 0.4961832061068702, + "matched_token_number" : 65 + }, + "00137_00002-00192_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00013_00002-00154_00002" : { + "minimal_similarity" : 0.18292682926829268, + "maximum_similarity" : 0.22556390977443608, + "matched_token_number" : 30 + }, + "00136_00002-00198_00001" : { + "minimal_similarity" : 0.0410958904109589, + "maximum_similarity" : 0.045454545454545456, + "matched_token_number" : 9 + }, + "00119_00001-00130_00002" : { + "minimal_similarity" : 0.32666666666666666, + "maximum_similarity" : 0.3684210526315789, + "matched_token_number" : 49 + }, + "00135_00001-00137_00002" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.21428571428571427, + "matched_token_number" : 36 + }, + "00121_00001-00195_00001" : { + "minimal_similarity" : 0.17098445595854922, + "maximum_similarity" : 0.21568627450980393, + "matched_token_number" : 33 + }, + "00130_00002-00186_00002" : { + "minimal_similarity" : 0.2159090909090909, + "maximum_similarity" : 0.2857142857142857, + "matched_token_number" : 38 + }, + "00121_00001-00195_00002" : { + "minimal_similarity" : 0.17098445595854922, + "maximum_similarity" : 0.21568627450980393, + "matched_token_number" : 33 + }, + "00195_00001-00197_00001" : { + "minimal_similarity" : 0.08496732026143791, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00000_00002-00202_00002" : { + "minimal_similarity" : 0.1597222222222222, + "maximum_similarity" : 0.16312056737588654, + "matched_token_number" : 23 + }, + "00005_00002-00183_00004" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.12244897959183673, + "matched_token_number" : 18 + }, + "00130_00002-00186_00004" : { + "minimal_similarity" : 0.3472222222222222, + "maximum_similarity" : 0.37593984962406013, + "matched_token_number" : 50 + }, + "00155_00001-00204_00001" : { + "minimal_similarity" : 0.216, + "maximum_similarity" : 0.225, + "matched_token_number" : 27 + }, + "00160_00001-00178_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00000_00002-00202_00003" : { + "minimal_similarity" : 0.1388888888888889, + "maximum_similarity" : 0.14184397163120568, + "matched_token_number" : 20 + }, + "00000_00003-00130_00002" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00013_00002-00095_00003" : { + "minimal_similarity" : 0.04950495049504951, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00194_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00130_00002-00154_00002" : { + "minimal_similarity" : 0.4146341463414634, + "maximum_similarity" : 0.5112781954887218, + "matched_token_number" : 68 + }, + "00184_00002-00203_00002" : { + "minimal_similarity" : 0.09655172413793103, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00178_00002-00204_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00187_00001-00193_00001" : { + "minimal_similarity" : 0.11515151515151516, + "maximum_similarity" : 0.14393939393939395, + "matched_token_number" : 19 + }, + "00092_00001-00195_00001" : { + "minimal_similarity" : 0.11764705882352941, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00092_00001-00195_00002" : { + "minimal_similarity" : 0.11764705882352941, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00130_00002-00187_00001" : { + "minimal_similarity" : 0.09774436090225563, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00095_00003-00140_00001" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00077_00001-00125_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00013_00002-00153_00001" : { + "minimal_similarity" : 0.18452380952380953, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00097_00002-00125_00001" : { + "minimal_similarity" : 0.07738095238095238, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00095_00003-00147_00001" : { + "minimal_similarity" : 0.054455445544554455, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00014_00001-00160_00001" : { + "minimal_similarity" : 0.08, + "maximum_similarity" : 0.08823529411764706, + "matched_token_number" : 12 + }, + "00013_00002-00186_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00147_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00196_00001-00197_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00136_00002-00197_00001" : { + "minimal_similarity" : 0.045662100456621, + "maximum_similarity" : 0.07575757575757576, + "matched_token_number" : 10 + }, + "00121_00001-00196_00001" : { + "minimal_similarity" : 0.027548209366391185, + "maximum_similarity" : 0.05181347150259067, + "matched_token_number" : 10 + }, + "00000_00003-00136_00002" : { + "minimal_similarity" : 0.0410958904109589, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00013_00002-00186_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00044_00002-00133_00001" : { + "minimal_similarity" : 0.16071428571428573, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00000_00002-00201_00001" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00097_00002-00126_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00013_00002-00187_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00095_00003-00141_00002" : { + "minimal_similarity" : 0.10891089108910891, + "maximum_similarity" : 0.14666666666666667, + "matched_token_number" : 22 + }, + "00031_00003-00111_00001" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00092_00001-00160_00001" : { + "minimal_similarity" : 0.1527777777777778, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00000_00003-00137_00002" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00031_00002-00129_00008" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00130_00002-00153_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00000_00002-00145_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00000_00003-00135_00001" : { + "minimal_similarity" : 0.10869565217391304, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00195_00001-00195_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 153 + }, + "00000_00001-00155_00001" : { + "minimal_similarity" : 0.11023622047244094, + "maximum_similarity" : 0.112, + "matched_token_number" : 14 + }, + "00111_00001-00120_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00031_00002-00127_00002" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00155_00001-00200_00002" : { + "minimal_similarity" : 0.08823529411764706, + "maximum_similarity" : 0.12, + "matched_token_number" : 15 + }, + "00137_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00133_00001-00134_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00005_00002-00184_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.20212765957446807, + "matched_token_number" : 19 + }, + "00121_00001-00129_00008" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.15544041450777202, + "matched_token_number" : 30 + }, + "00000_00002-00203_00002" : { + "minimal_similarity" : 0.12413793103448276, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00005_00002-00184_00003" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.20212765957446807, + "matched_token_number" : 19 + }, + "00077_00001-00193_00001" : { + "minimal_similarity" : 0.12169312169312169, + "maximum_similarity" : 0.1393939393939394, + "matched_token_number" : 23 + }, + "00095_00003-00142_00001" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.0784313725490196, + "matched_token_number" : 12 + }, + "00095_00003-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00160_00001-00177_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00195_00001-00198_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00121_00001" : { + "minimal_similarity" : 0.06735751295336788, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00137_00002-00199_00001" : { + "minimal_similarity" : 0.05952380952380952, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00005_00002-00187_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07575757575757576, + "matched_token_number" : 10 + }, + "00196_00001-00198_00001" : { + "minimal_similarity" : 0.027548209366391185, + "maximum_similarity" : 0.050505050505050504, + "matched_token_number" : 10 + }, + "00120_00001-00127_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00092_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00120_00001-00129_00008" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00013_00002-00092_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00044_00002-00131_00005" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.13970588235294118, + "matched_token_number" : 19 + }, + "00000_00001-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00186_00004-00194_00001" : { + "minimal_similarity" : 0.17333333333333334, + "maximum_similarity" : 0.18055555555555555, + "matched_token_number" : 26 + }, + "00134_00001-00137_00002" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00000_00003-00077_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00186_00004-00192_00002" : { + "minimal_similarity" : 0.4097222222222222, + "maximum_similarity" : 0.45038167938931295, + "matched_token_number" : 59 + }, + "00186_00004-00192_00001" : { + "minimal_similarity" : 0.3096774193548387, + "maximum_similarity" : 0.3333333333333333, + "matched_token_number" : 48 + }, + "00155_00001-00202_00002" : { + "minimal_similarity" : 0.1702127659574468, + "maximum_similarity" : 0.192, + "matched_token_number" : 24 + }, + "00155_00001-00202_00003" : { + "minimal_similarity" : 0.1702127659574468, + "maximum_similarity" : 0.192, + "matched_token_number" : 24 + }, + "00121_00001-00193_00001" : { + "minimal_similarity" : 0.046632124352331605, + "maximum_similarity" : 0.05454545454545454, + "matched_token_number" : 9 + }, + "00077_00001-00129_00008" : { + "minimal_similarity" : 0.03546099290780142, + "maximum_similarity" : 0.05291005291005291, + "matched_token_number" : 10 + }, + "00005_00002-00186_00004" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00092_00001-00199_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00137_00002-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.22023809523809523, + "matched_token_number" : 37 + }, + "00005_00002-00186_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.11363636363636363, + "matched_token_number" : 20 + }, + "00136_00002-00194_00001" : { + "minimal_similarity" : 0.1004566210045662, + "maximum_similarity" : 0.14666666666666667, + "matched_token_number" : 22 + }, + "00077_00001-00192_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.06451612903225806, + "matched_token_number" : 10 + }, + "00077_00001-00192_00002" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07633587786259542, + "matched_token_number" : 10 + }, + "00095_00003-00202_00002" : { + "minimal_similarity" : 0.09405940594059406, + "maximum_similarity" : 0.1347517730496454, + "matched_token_number" : 19 + }, + "00000_00003-00133_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00095_00003-00202_00003" : { + "minimal_similarity" : 0.09405940594059406, + "maximum_similarity" : 0.1347517730496454, + "matched_token_number" : 19 + }, + "00135_00001-00138_00001" : { + "minimal_similarity" : 0.08152173913043478, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00134_00001-00136_00002" : { + "minimal_similarity" : 0.0410958904109589, + "maximum_similarity" : 0.07692307692307693, + "matched_token_number" : 9 + }, + "00031_00002-00125_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00155_00001-00203_00002" : { + "minimal_similarity" : 0.1103448275862069, + "maximum_similarity" : 0.128, + "matched_token_number" : 16 + }, + "00092_00001-00198_00001" : { + "minimal_similarity" : 0.050505050505050504, + "maximum_similarity" : 0.06944444444444445, + "matched_token_number" : 10 + }, + "00121_00001-00194_00001" : { + "minimal_similarity" : 0.27461139896373055, + "maximum_similarity" : 0.35333333333333333, + "matched_token_number" : 53 + }, + "00095_00003-00145_00001" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.13690476190476192, + "matched_token_number" : 23 + }, + "00000_00003-00134_00001" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.07692307692307693, + "matched_token_number" : 9 + }, + "00186_00004-00193_00001" : { + "minimal_similarity" : 0.2, + "maximum_similarity" : 0.22916666666666666, + "matched_token_number" : 33 + }, + "00095_00003-00203_00002" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00195_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00137_00002-00197_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00000_00002-00204_00001" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.075, + "matched_token_number" : 9 + }, + "00153_00001-00178_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00031_00002-00126_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00136_00002-00193_00001" : { + "minimal_similarity" : 0.0502283105022831, + "maximum_similarity" : 0.06666666666666667, + "matched_token_number" : 11 + }, + "00134_00001-00155_00001" : { + "minimal_similarity" : 0.704, + "maximum_similarity" : 0.7521367521367521, + "matched_token_number" : 88 + }, + "00130_00002-00201_00001" : { + "minimal_similarity" : 0.06766917293233082, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00121_00001-00145_00001" : { + "minimal_similarity" : 0.7046632124352331, + "maximum_similarity" : 0.8095238095238095, + "matched_token_number" : 136 + }, + "00000_00001-00119_00001" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2125984251968504, + "matched_token_number" : 27 + }, + "00140_00001-00141_00002" : { + "minimal_similarity" : 0.32666666666666666, + "maximum_similarity" : 0.3684210526315789, + "matched_token_number" : 49 + }, + "00131_00005-00136_00002" : { + "minimal_similarity" : 0.1050228310502283, + "maximum_similarity" : 0.12169312169312169, + "matched_token_number" : 23 + }, + "00113_00002-00154_00002" : { + "minimal_similarity" : 0.8862275449101796, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00000_00003-00119_00001" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00000_00005-00119_00001" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00092_00001-00184_00002" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.10638297872340426, + "matched_token_number" : 10 + }, + "00044_00002-00183_00004" : { + "minimal_similarity" : 0.06802721088435375, + "maximum_similarity" : 0.07352941176470588, + "matched_token_number" : 10 + }, + "00092_00001-00184_00003" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.10638297872340426, + "matched_token_number" : 10 + }, + "00202_00003-00204_00001" : { + "minimal_similarity" : 0.3120567375886525, + "maximum_similarity" : 0.36666666666666664, + "matched_token_number" : 44 + }, + "00127_00002-00129_00008" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17857142857142858, + "matched_token_number" : 30 + }, + "00129_00008-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00197_00001-00204_00001" : { + "minimal_similarity" : 0.3939393939393939, + "maximum_similarity" : 0.43333333333333335, + "matched_token_number" : 52 + }, + "00031_00003-00160_00001" : { + "minimal_similarity" : 0.0661764705882353, + "maximum_similarity" : 0.07894736842105263, + "matched_token_number" : 9 + }, + "00153_00001-00177_00003" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00145_00001-00178_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00031_00003-00203_00002" : { + "minimal_similarity" : 0.16551724137931034, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00013_00002-00111_00001" : { + "minimal_similarity" : 0.18452380952380953, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00077_00001-00141_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00156_00002-00183_00004" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.08163265306122448, + "matched_token_number" : 12 + }, + "00136_00002-00155_00001" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.152, + "matched_token_number" : 19 + }, + "00137_00002-00187_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00097_00002-00136_00002" : { + "minimal_similarity" : 0.0410958904109589, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00160_00001-00195_00002" : { + "minimal_similarity" : 0.058823529411764705, + "maximum_similarity" : 0.0661764705882353, + "matched_token_number" : 9 + }, + "00000_00002-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00160_00001-00195_00001" : { + "minimal_similarity" : 0.058823529411764705, + "maximum_similarity" : 0.0661764705882353, + "matched_token_number" : 9 + }, + "00031_00002-00199_00001" : { + "minimal_similarity" : 0.0967741935483871, + "maximum_similarity" : 0.12631578947368421, + "matched_token_number" : 12 + }, + "00195_00002-00204_00001" : { + "minimal_similarity" : 0.08496732026143791, + "maximum_similarity" : 0.10833333333333334, + "matched_token_number" : 13 + }, + "00125_00001-00129_00008" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17857142857142858, + "matched_token_number" : 30 + }, + "00147_00001-00160_00001" : { + "minimal_similarity" : 0.1527777777777778, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00000_00002-00127_00002" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00095_00003-00131_00005" : { + "minimal_similarity" : 0.04950495049504951, + "maximum_similarity" : 0.05291005291005291, + "matched_token_number" : 10 + }, + "00005_00002-00138_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00135_00001-00187_00001" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.06818181818181818, + "matched_token_number" : 9 + }, + "00200_00002-00204_00001" : { + "minimal_similarity" : 0.12941176470588237, + "maximum_similarity" : 0.18333333333333332, + "matched_token_number" : 22 + }, + "00121_00001-00140_00001" : { + "minimal_similarity" : 0.23834196891191708, + "maximum_similarity" : 0.3458646616541353, + "matched_token_number" : 46 + }, + "00000_00001-00160_00001" : { + "minimal_similarity" : 0.07352941176470588, + "maximum_similarity" : 0.07874015748031496, + "matched_token_number" : 10 + }, + "00000_00003-00160_00001" : { + "minimal_similarity" : 0.06756756756756757, + "maximum_similarity" : 0.07352941176470588, + "matched_token_number" : 10 + }, + "00193_00001-00204_00001" : { + "minimal_similarity" : 0.06060606060606061, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 10 + }, + "00077_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00141_00002-00186_00004" : { + "minimal_similarity" : 0.17333333333333334, + "maximum_similarity" : 0.18055555555555555, + "matched_token_number" : 26 + }, + "00154_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00141_00002-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.18, + "matched_token_number" : 27 + }, + "00014_00001-00092_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00031_00003-00186_00002" : { + "minimal_similarity" : 0.1590909090909091, + "maximum_similarity" : 0.24561403508771928, + "matched_token_number" : 28 + }, + "00140_00001-00200_00002" : { + "minimal_similarity" : 0.10588235294117647, + "maximum_similarity" : 0.13533834586466165, + "matched_token_number" : 18 + }, + "00126_00002-00202_00002" : { + "minimal_similarity" : 0.06896551724137931, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00000_00002-00194_00001" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00129_00008-00137_00002" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17857142857142858, + "matched_token_number" : 30 + }, + "00126_00002-00202_00003" : { + "minimal_similarity" : 0.06896551724137931, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00121_00001-00204_00001" : { + "minimal_similarity" : 0.13989637305699482, + "maximum_similarity" : 0.225, + "matched_token_number" : 27 + }, + "00184_00002-00202_00002" : { + "minimal_similarity" : 0.14893617021276595, + "maximum_similarity" : 0.22340425531914893, + "matched_token_number" : 21 + }, + "00184_00002-00202_00003" : { + "minimal_similarity" : 0.14893617021276595, + "maximum_similarity" : 0.22340425531914893, + "matched_token_number" : 21 + }, + "00129_00008-00200_00002" : { + "minimal_similarity" : 0.03546099290780142, + "maximum_similarity" : 0.058823529411764705, + "matched_token_number" : 10 + }, + "00097_00002-00131_00005" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00003-00186_00004" : { + "minimal_similarity" : 0.18055555555555555, + "maximum_similarity" : 0.22807017543859648, + "matched_token_number" : 26 + }, + "00142_00001-00154_00002" : { + "minimal_similarity" : 0.15853658536585366, + "maximum_similarity" : 0.16993464052287582, + "matched_token_number" : 26 + }, + "00145_00001-00199_00001" : { + "minimal_similarity" : 0.05952380952380952, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00092_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00135_00001-00136_00002" : { + "minimal_similarity" : 0.0410958904109589, + "maximum_similarity" : 0.04891304347826087, + "matched_token_number" : 9 + }, + "00005_00002-00095_00003" : { + "minimal_similarity" : 0.04950495049504951, + "maximum_similarity" : 0.05291005291005291, + "matched_token_number" : 10 + }, + "00119_00001-00138_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00153_00001-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.22023809523809523, + "matched_token_number" : 37 + }, + "00014_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.07333333333333333, + "matched_token_number" : 11 + }, + "00014_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.07333333333333333, + "matched_token_number" : 11 + }, + "00092_00001-00138_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 144 + }, + "00095_00003-00136_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.09405940594059406, + "matched_token_number" : 19 + }, + "00156_00003-00196_00001" : { + "minimal_similarity" : 0.049586776859504134, + "maximum_similarity" : 0.10112359550561797, + "matched_token_number" : 18 + }, + "00044_00002-00137_00002" : { + "minimal_similarity" : 0.16071428571428573, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00141_00002-00203_00002" : { + "minimal_similarity" : 0.15333333333333332, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00177_00003-00201_00001" : { + "minimal_similarity" : 0.05357142857142857, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00000_00003-00203_00002" : { + "minimal_similarity" : 0.12162162162162163, + "maximum_similarity" : 0.12413793103448276, + "matched_token_number" : 18 + }, + "00119_00001-00184_00003" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00111_00001-00133_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00119_00001-00184_00002" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00000_00001-00203_00002" : { + "minimal_similarity" : 0.15172413793103448, + "maximum_similarity" : 0.1732283464566929, + "matched_token_number" : 22 + }, + "00000_00002-00178_00002" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00014_00001-00097_00002" : { + "minimal_similarity" : 0.18666666666666668, + "maximum_similarity" : 0.1891891891891892, + "matched_token_number" : 28 + }, + "00125_00001-00140_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00077_00001-00120_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13793103448275862, + "matched_token_number" : 20 + }, + "00120_00001-00202_00003" : { + "minimal_similarity" : 0.06896551724137931, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00014_00001-00198_00001" : { + "minimal_similarity" : 0.10606060606060606, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00120_00001-00202_00002" : { + "minimal_similarity" : 0.06896551724137931, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00095_00003-00178_00002" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.13690476190476192, + "matched_token_number" : 23 + }, + "00005_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00187_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00044_00002-00111_00001" : { + "minimal_similarity" : 0.16071428571428573, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00134_00001-00197_00001" : { + "minimal_similarity" : 0.08333333333333333, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00113_00002-00133_00001" : { + "minimal_similarity" : 0.9940476190476191, + "maximum_similarity" : 1.0, + "matched_token_number" : 167 + }, + "00137_00002-00140_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00131_00005-00178_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00092_00001-00133_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00119_00001-00133_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00153_00001-00193_00001" : { + "minimal_similarity" : 0.07142857142857142, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00031_00003-00119_00001" : { + "minimal_similarity" : 0.16, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00130_00002-00184_00003" : { + "minimal_similarity" : 0.12030075187969924, + "maximum_similarity" : 0.1702127659574468, + "matched_token_number" : 16 + }, + "00130_00002-00184_00002" : { + "minimal_similarity" : 0.12030075187969924, + "maximum_similarity" : 0.1702127659574468, + "matched_token_number" : 16 + }, + "00187_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00127_00002-00140_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00013_00002-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00177_00003" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00031_00003-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00044_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00130_00002" : { + "minimal_similarity" : 0.32666666666666666, + "maximum_similarity" : 0.3684210526315789, + "matched_token_number" : 49 + }, + "00138_00001-00155_00001" : { + "minimal_similarity" : 0.10416666666666667, + "maximum_similarity" : 0.12, + "matched_token_number" : 15 + }, + "00192_00002-00198_00001" : { + "minimal_similarity" : 0.06565656565656566, + "maximum_similarity" : 0.09923664122137404, + "matched_token_number" : 13 + }, + "00000_00005-00092_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00178_00002-00194_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00044_00002-00141_00002" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00111_00001-00154_00002" : { + "minimal_similarity" : 0.8809523809523809, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00133_00001-00195_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00133_00001-00195_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00147_00001-00203_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00184_00003-00198_00001" : { + "minimal_similarity" : 0.045454545454545456, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00194_00001-00198_00001" : { + "minimal_similarity" : 0.10606060606060606, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00000_00001-00092_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00160_00001-00203_00002" : { + "minimal_similarity" : 0.12413793103448276, + "maximum_similarity" : 0.1323529411764706, + "matched_token_number" : 18 + }, + "00031_00002-00194_00001" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00000_00005-00203_00002" : { + "minimal_similarity" : 0.06040268456375839, + "maximum_similarity" : 0.06206896551724138, + "matched_token_number" : 9 + }, + "00014_00001-00119_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 150 + }, + "00000_00003-00092_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00130_00002-00133_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00097_00002-00140_00001" : { + "minimal_similarity" : 0.25675675675675674, + "maximum_similarity" : 0.2857142857142857, + "matched_token_number" : 38 + }, + "00014_00001-00126_00002" : { + "minimal_similarity" : 0.31333333333333335, + "maximum_similarity" : 0.32413793103448274, + "matched_token_number" : 47 + }, + "00138_00001-00197_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00113_00002-00184_00002" : { + "minimal_similarity" : 0.15568862275449102, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00031_00003-00092_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.08771929824561403, + "matched_token_number" : 10 + }, + "00113_00002-00184_00003" : { + "minimal_similarity" : 0.15568862275449102, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00126_00002-00194_00001" : { + "minimal_similarity" : 0.31333333333333335, + "maximum_similarity" : 0.32413793103448274, + "matched_token_number" : 47 + }, + "00125_00001-00187_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00092_00001-00121_00001" : { + "minimal_similarity" : 0.07772020725388601, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00127_00002-00204_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00000_00005-00013_00002" : { + "minimal_similarity" : 0.06040268456375839, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00131_00005-00199_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.09473684210526316, + "matched_token_number" : 9 + }, + "00126_00002-00134_00001" : { + "minimal_similarity" : 0.1724137931034483, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00140_00001-00197_00001" : { + "minimal_similarity" : 0.09774436090225563, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00000_00001-00013_00002" : { + "minimal_similarity" : 0.06766917293233082, + "maximum_similarity" : 0.07086614173228346, + "matched_token_number" : 9 + }, + "00135_00001-00178_00002" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.21428571428571427, + "matched_token_number" : 36 + }, + "00186_00002-00198_00001" : { + "minimal_similarity" : 0.08080808080808081, + "maximum_similarity" : 0.09090909090909091, + "matched_token_number" : 16 + }, + "00201_00001-00202_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00154_00002-00204_00001" : { + "minimal_similarity" : 0.1402439024390244, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00131_00005-00204_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.16666666666666666, + "matched_token_number" : 20 + }, + "00119_00001-00142_00001" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00120_00001-00155_00001" : { + "minimal_similarity" : 0.2482758620689655, + "maximum_similarity" : 0.288, + "matched_token_number" : 36 + }, + "00199_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00192_00001-00192_00002" : { + "minimal_similarity" : 0.6451612903225806, + "maximum_similarity" : 0.7633587786259542, + "matched_token_number" : 100 + }, + "00111_00001-00184_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00111_00001-00184_00003" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00133_00001-00153_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00186_00002-00186_00004" : { + "minimal_similarity" : 0.3522727272727273, + "maximum_similarity" : 0.4305555555555556, + "matched_token_number" : 62 + }, + "00127_00002-00187_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00138_00001-00202_00003" : { + "minimal_similarity" : 0.08333333333333333, + "maximum_similarity" : 0.0851063829787234, + "matched_token_number" : 12 + }, + "00014_00001-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.18, + "matched_token_number" : 27 + }, + "00138_00001-00202_00002" : { + "minimal_similarity" : 0.08333333333333333, + "maximum_similarity" : 0.0851063829787234, + "matched_token_number" : 12 + }, + "00156_00003-00204_00001" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.075, + "matched_token_number" : 9 + }, + "00192_00001-00202_00002" : { + "minimal_similarity" : 0.6, + "maximum_similarity" : 0.6595744680851063, + "matched_token_number" : 93 + }, + "00192_00001-00202_00003" : { + "minimal_similarity" : 0.6451612903225806, + "maximum_similarity" : 0.7092198581560284, + "matched_token_number" : 100 + }, + "00014_00001-00186_00004" : { + "minimal_similarity" : 0.17333333333333334, + "maximum_similarity" : 0.18055555555555555, + "matched_token_number" : 26 + }, + "00178_00002-00187_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00133_00001-00203_00002" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00125_00001-00154_00002" : { + "minimal_similarity" : 0.8809523809523809, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00142_00001-00184_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00142_00001-00184_00003" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00131_00005-00140_00001" : { + "minimal_similarity" : 0.06349206349206349, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00125_00001-00204_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00111_00001-00145_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00138_00001-00192_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00130_00002" : { + "minimal_similarity" : 0.12030075187969924, + "maximum_similarity" : 0.12598425196850394, + "matched_token_number" : 16 + }, + "00119_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00092_00001-00126_00002" : { + "minimal_similarity" : 0.12413793103448276, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00129_00008-00141_00002" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.2, + "matched_token_number" : 30 + }, + "00138_00001-00192_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00141_00002-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.07333333333333333, + "matched_token_number" : 11 + }, + "00000_00002-00005_00002" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00031_00003-00135_00001" : { + "minimal_similarity" : 0.15760869565217392, + "maximum_similarity" : 0.2543859649122807, + "matched_token_number" : 29 + }, + "00014_00001-00203_00002" : { + "minimal_similarity" : 0.15333333333333332, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00141_00002-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.07333333333333333, + "matched_token_number" : 11 + }, + "00111_00001-00129_00008" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17857142857142858, + "matched_token_number" : 30 + }, + "00126_00002-00127_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00005_00002-00147_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00201_00001-00202_00003" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00005_00002-00044_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.13970588235294118, + "matched_token_number" : 19 + }, + "00113_00002-00129_00008" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17964071856287425, + "matched_token_number" : 30 + }, + "00097_00002-00194_00001" : { + "minimal_similarity" : 0.18666666666666668, + "maximum_similarity" : 0.1891891891891892, + "matched_token_number" : 28 + }, + "00000_00002-00131_00005" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00127_00002-00154_00002" : { + "minimal_similarity" : 0.8809523809523809, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00192_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00119_00001-00154_00002" : { + "minimal_similarity" : 0.2682926829268293, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00186_00002-00203_00002" : { + "minimal_similarity" : 0.2215909090909091, + "maximum_similarity" : 0.2689655172413793, + "matched_token_number" : 39 + }, + "00000_00005-00177_00003" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00131_00005-00145_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00119_00001-00201_00001" : { + "minimal_similarity" : 0.24, + "maximum_similarity" : 0.27692307692307694, + "matched_token_number" : 36 + }, + "00000_00005-00130_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00177_00003" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00192_00002-00193_00001" : { + "minimal_similarity" : 0.12727272727272726, + "maximum_similarity" : 0.16030534351145037, + "matched_token_number" : 21 + }, + "00113_00002-00138_00001" : { + "minimal_similarity" : 0.08982035928143713, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00145_00001-00202_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00183_00004-00192_00001" : { + "minimal_similarity" : 0.07741935483870968, + "maximum_similarity" : 0.08163265306122448, + "matched_token_number" : 12 + }, + "00000_00001-00135_00001" : { + "minimal_similarity" : 0.15760869565217392, + "maximum_similarity" : 0.2283464566929134, + "matched_token_number" : 29 + }, + "00145_00001-00202_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00183_00004-00192_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00044_00002-00197_00001" : { + "minimal_similarity" : 0.40441176470588236, + "maximum_similarity" : 0.4166666666666667, + "matched_token_number" : 55 + }, + "00141_00002-00198_00001" : { + "minimal_similarity" : 0.10606060606060606, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00111_00001-00140_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00111_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00142_00001" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00125_00001-00138_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00005_00002-00154_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.12804878048780488, + "matched_token_number" : 21 + }, + "00183_00004-00195_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00111_00001-00201_00001" : { + "minimal_similarity" : 0.05357142857142857, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00183_00004-00200_00002" : { + "minimal_similarity" : 0.13529411764705881, + "maximum_similarity" : 0.1564625850340136, + "matched_token_number" : 23 + }, + "00183_00004-00195_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00131_00005-00187_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07575757575757576, + "matched_token_number" : 10 + }, + "00014_00001-00135_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.24, + "matched_token_number" : 36 + }, + "00140_00001-00155_00001" : { + "minimal_similarity" : 0.39097744360902253, + "maximum_similarity" : 0.416, + "matched_token_number" : 52 + }, + "00113_00002-00142_00001" : { + "minimal_similarity" : 0.2155688622754491, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00127_00002-00138_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00113_00002-00145_00001" : { + "minimal_similarity" : 0.9940476190476191, + "maximum_similarity" : 1.0, + "matched_token_number" : 167 + }, + "00000_00003-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00129_00008-00192_00002" : { + "minimal_similarity" : 0.0851063829787234, + "maximum_similarity" : 0.183206106870229, + "matched_token_number" : 24 + }, + "00129_00008-00192_00001" : { + "minimal_similarity" : 0.11702127659574468, + "maximum_similarity" : 0.2129032258064516, + "matched_token_number" : 33 + }, + "00141_00002-00160_00001" : { + "minimal_similarity" : 0.08, + "maximum_similarity" : 0.08823529411764706, + "matched_token_number" : 12 + }, + "00145_00001-00194_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00000_00005-00135_00001" : { + "minimal_similarity" : 0.10869565217391304, + "maximum_similarity" : 0.1342281879194631, + "matched_token_number" : 20 + }, + "00031_00003-00195_00001" : { + "minimal_similarity" : 0.0915032679738562, + "maximum_similarity" : 0.12280701754385964, + "matched_token_number" : 14 + }, + "00153_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00031_00003-00195_00002" : { + "minimal_similarity" : 0.0915032679738562, + "maximum_similarity" : 0.12280701754385964, + "matched_token_number" : 14 + }, + "00113_00002-00201_00001" : { + "minimal_similarity" : 0.05389221556886228, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00153_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00113_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00097_00002-00145_00001" : { + "minimal_similarity" : 0.07738095238095238, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00013_00002-00120_00001" : { + "minimal_similarity" : 0.06896551724137931, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00000_00005-00186_00004" : { + "minimal_similarity" : 0.18791946308724833, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00111_00001-00138_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00127_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00186_00002" : { + "minimal_similarity" : 0.2556818181818182, + "maximum_similarity" : 0.3543307086614173, + "matched_token_number" : 45 + }, + "00000_00005-00186_00002" : { + "minimal_similarity" : 0.17613636363636365, + "maximum_similarity" : 0.2080536912751678, + "matched_token_number" : 31 + }, + "00125_00001-00145_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00000_00001-00186_00004" : { + "minimal_similarity" : 0.2916666666666667, + "maximum_similarity" : 0.33070866141732286, + "matched_token_number" : 42 + }, + "00147_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00147_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00119_00001-00147_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00003-00156_00002" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00131_00005-00194_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00000_00003-00156_00003" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00198_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00186_00002-00193_00001" : { + "minimal_similarity" : 0.29545454545454547, + "maximum_similarity" : 0.3151515151515151, + "matched_token_number" : 52 + }, + "00133_00001-00160_00001" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00153_00001-00160_00001" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00125_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00044_00002-00153_00001" : { + "minimal_similarity" : 0.16071428571428573, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00014_00001-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.08, + "matched_token_number" : 12 + }, + "00111_00001-00142_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00192_00001-00197_00001" : { + "minimal_similarity" : 0.5806451612903226, + "maximum_similarity" : 0.6818181818181818, + "matched_token_number" : 90 + }, + "00077_00001-00111_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00097_00002-00204_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00127_00002-00145_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00153_00001-00184_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00153_00001-00184_00003" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00134_00001-00200_00002" : { + "minimal_similarity" : 0.08823529411764706, + "maximum_similarity" : 0.1282051282051282, + "matched_token_number" : 15 + }, + "00184_00003-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00113_00002-00121_00001" : { + "minimal_similarity" : 0.6994818652849741, + "maximum_similarity" : 0.8083832335329342, + "matched_token_number" : 135 + }, + "00131_00005-00196_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.047619047619047616, + "matched_token_number" : 9 + }, + "00119_00001-00145_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00121_00001-00138_00001" : { + "minimal_similarity" : 0.07772020725388601, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00031_00003-00193_00001" : { + "minimal_similarity" : 0.11515151515151516, + "maximum_similarity" : 0.16666666666666666, + "matched_token_number" : 19 + }, + "00126_00002-00197_00001" : { + "minimal_similarity" : 0.0896551724137931, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00005_00002-00014_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00000_00005-00121_00001" : { + "minimal_similarity" : 0.05699481865284974, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00160_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00127_00002-00131_00005" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00031_00002-00113_00002" : { + "minimal_similarity" : 0.0658682634730539, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00000_00005-00126_00002" : { + "minimal_similarity" : 0.06711409395973154, + "maximum_similarity" : 0.06896551724137931, + "matched_token_number" : 10 + }, + "00127_00002-00184_00003" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00000_00003-00121_00001" : { + "minimal_similarity" : 0.10362694300518134, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00127_00002-00184_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00133_00001-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00031_00003-00153_00001" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00000_00002-00187_00001" : { + "minimal_similarity" : 0.20833333333333334, + "maximum_similarity" : 0.22727272727272727, + "matched_token_number" : 30 + }, + "00199_00001-00203_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00013_00002-00197_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00111_00001-00187_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00005_00002-00140_00001" : { + "minimal_similarity" : 0.06349206349206349, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00177_00003-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.22023809523809523, + "matched_token_number" : 37 + }, + "00126_00002-00131_00005" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13793103448275862, + "matched_token_number" : 20 + }, + "00005_00002-00198_00001" : { + "minimal_similarity" : 0.050505050505050504, + "maximum_similarity" : 0.05291005291005291, + "matched_token_number" : 10 + }, + "00111_00001-00147_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00001-00147_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00147_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00145_00001-00204_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00119_00001-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.08, + "matched_token_number" : 12 + }, + "00156_00003-00184_00003" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00000_00003-00193_00001" : { + "minimal_similarity" : 0.06666666666666667, + "maximum_similarity" : 0.07432432432432433, + "matched_token_number" : 11 + }, + "00183_00004-00197_00001" : { + "minimal_similarity" : 0.07482993197278912, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 11 + }, + "00156_00003-00184_00002" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00147_00001-00153_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00005-00153_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00154_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00142_00001-00193_00001" : { + "minimal_similarity" : 0.12727272727272726, + "maximum_similarity" : 0.13725490196078433, + "matched_token_number" : 21 + }, + "00044_00002-00155_00001" : { + "minimal_similarity" : 0.19852941176470587, + "maximum_similarity" : 0.216, + "matched_token_number" : 27 + }, + "00077_00001-00155_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.152, + "matched_token_number" : 19 + }, + "00156_00002-00197_00001" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.06818181818181818, + "matched_token_number" : 9 + }, + "00121_00001-00133_00001" : { + "minimal_similarity" : 0.7046632124352331, + "maximum_similarity" : 0.8095238095238095, + "matched_token_number" : 136 + }, + "00044_00002-00195_00002" : { + "minimal_similarity" : 0.10457516339869281, + "maximum_similarity" : 0.11764705882352941, + "matched_token_number" : 16 + }, + "00044_00002-00195_00001" : { + "minimal_similarity" : 0.10457516339869281, + "maximum_similarity" : 0.11764705882352941, + "matched_token_number" : 16 + }, + "00000_00001-00193_00001" : { + "minimal_similarity" : 0.12727272727272726, + "maximum_similarity" : 0.16535433070866143, + "matched_token_number" : 21 + }, + "00005_00002-00177_00003" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00119_00001-00177_00003" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00130_00002-00177_00003" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00000_00003-00126_00002" : { + "minimal_similarity" : 0.12837837837837837, + "maximum_similarity" : 0.1310344827586207, + "matched_token_number" : 19 + }, + "00184_00003-00195_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00127_00002-00136_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00195_00002-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00137_00002-00154_00002" : { + "minimal_similarity" : 0.8809523809523809, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00184_00003-00195_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00113_00002-00140_00001" : { + "minimal_similarity" : 0.3652694610778443, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00111_00001-00204_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00000_00003-00142_00001" : { + "minimal_similarity" : 0.12418300653594772, + "maximum_similarity" : 0.12837837837837837, + "matched_token_number" : 19 + }, + "00000_00001-00142_00001" : { + "minimal_similarity" : 0.16339869281045752, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00177_00003-00193_00001" : { + "minimal_similarity" : 0.07142857142857142, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00119_00001-00126_00002" : { + "minimal_similarity" : 0.31333333333333335, + "maximum_similarity" : 0.32413793103448274, + "matched_token_number" : 47 + }, + "00031_00002-00134_00001" : { + "minimal_similarity" : 0.18548387096774194, + "maximum_similarity" : 0.19658119658119658, + "matched_token_number" : 23 + }, + "00013_00002-00192_00001" : { + "minimal_similarity" : 0.05806451612903226, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00013_00002-00192_00002" : { + "minimal_similarity" : 0.06766917293233082, + "maximum_similarity" : 0.06870229007633588, + "matched_token_number" : 9 + }, + "00005_00002-00193_00001" : { + "minimal_similarity" : 0.12169312169312169, + "maximum_similarity" : 0.1393939393939394, + "matched_token_number" : 23 + }, + "00000_00002-00155_00001" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.072, + "matched_token_number" : 9 + }, + "00031_00003-00177_00003" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00145_00001-00187_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00013_00002-00125_00001" : { + "minimal_similarity" : 0.18452380952380953, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00000_00003-00198_00001" : { + "minimal_similarity" : 0.10101010101010101, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00005_00002-00121_00001" : { + "minimal_similarity" : 0.09844559585492228, + "maximum_similarity" : 0.10052910052910052, + "matched_token_number" : 19 + }, + "00177_00003-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00133_00001-00141_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00000_00001-00195_00002" : { + "minimal_similarity" : 0.16339869281045752, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00000_00001-00195_00001" : { + "minimal_similarity" : 0.16339869281045752, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00031_00002-00187_00001" : { + "minimal_similarity" : 0.13636363636363635, + "maximum_similarity" : 0.14516129032258066, + "matched_token_number" : 18 + }, + "00121_00001-00131_00005" : { + "minimal_similarity" : 0.09844559585492228, + "maximum_similarity" : 0.10052910052910052, + "matched_token_number" : 19 + }, + "00000_00001-00198_00001" : { + "minimal_similarity" : 0.05555555555555555, + "maximum_similarity" : 0.08661417322834646, + "matched_token_number" : 11 + }, + "00177_00003-00204_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00125_00001-00178_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00005_00002-00204_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.16666666666666666, + "matched_token_number" : 20 + }, + "00140_00001-00195_00002" : { + "minimal_similarity" : 0.17647058823529413, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00077_00001-00153_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00140_00001-00195_00001" : { + "minimal_similarity" : 0.17647058823529413, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00121_00001-00184_00003" : { + "minimal_similarity" : 0.11917098445595854, + "maximum_similarity" : 0.24468085106382978, + "matched_token_number" : 23 + }, + "00121_00001-00184_00002" : { + "minimal_similarity" : 0.11917098445595854, + "maximum_similarity" : 0.24468085106382978, + "matched_token_number" : 23 + }, + "00119_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.07333333333333333, + "matched_token_number" : 11 + }, + "00092_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00092_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00000_00003-00195_00002" : { + "minimal_similarity" : 0.12418300653594772, + "maximum_similarity" : 0.12837837837837837, + "matched_token_number" : 19 + }, + "00136_00002-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00195_00001" : { + "minimal_similarity" : 0.12418300653594772, + "maximum_similarity" : 0.12837837837837837, + "matched_token_number" : 19 + }, + "00119_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.07333333333333333, + "matched_token_number" : 11 + }, + "00138_00001-00199_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00000_00002-00077_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00005_00002-00196_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.047619047619047616, + "matched_token_number" : 9 + }, + "00013_00002-00160_00001" : { + "minimal_similarity" : 0.0661764705882353, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00044_00002-00192_00001" : { + "minimal_similarity" : 0.3419354838709677, + "maximum_similarity" : 0.3897058823529412, + "matched_token_number" : 53 + }, + "00044_00002-00192_00002" : { + "minimal_similarity" : 0.38235294117647056, + "maximum_similarity" : 0.3969465648854962, + "matched_token_number" : 52 + }, + "00126_00002-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00127_00002-00133_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00195_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00156_00003-00187_00001" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.06818181818181818, + "matched_token_number" : 9 + }, + "00014_00001-00095_00003" : { + "minimal_similarity" : 0.10891089108910891, + "maximum_similarity" : 0.14666666666666667, + "matched_token_number" : 22 + }, + "00111_00001-00131_00005" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00134_00001-00199_00001" : { + "minimal_similarity" : 0.10256410256410256, + "maximum_similarity" : 0.12631578947368421, + "matched_token_number" : 12 + }, + "00138_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00092_00001-00135_00001" : { + "minimal_similarity" : 0.08152173913043478, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00002-00134_00001" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.07692307692307693, + "matched_token_number" : 9 + }, + "00119_00001-00129_00008" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.2, + "matched_token_number" : 30 + }, + "00121_00001-00154_00002" : { + "minimal_similarity" : 0.616580310880829, + "maximum_similarity" : 0.725609756097561, + "matched_token_number" : 119 + }, + "00184_00002-00187_00001" : { + "minimal_similarity" : 0.10606060606060606, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00202_00002-00203_00002" : { + "minimal_similarity" : 0.2896551724137931, + "maximum_similarity" : 0.2978723404255319, + "matched_token_number" : 42 + }, + "00119_00001-00140_00001" : { + "minimal_similarity" : 0.32666666666666666, + "maximum_similarity" : 0.3684210526315789, + "matched_token_number" : 49 + }, + "00031_00003-00126_00002" : { + "minimal_similarity" : 0.09655172413793103, + "maximum_similarity" : 0.12280701754385964, + "matched_token_number" : 14 + }, + "00005_00002-00145_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00113_00002-00126_00002" : { + "minimal_similarity" : 0.2155688622754491, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00092_00001-00154_00002" : { + "minimal_similarity" : 0.07926829268292683, + "maximum_similarity" : 0.09027777777777778, + "matched_token_number" : 13 + }, + "00077_00001-00137_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00200_00002-00202_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00130_00002-00204_00001" : { + "minimal_similarity" : 0.09774436090225563, + "maximum_similarity" : 0.10833333333333334, + "matched_token_number" : 13 + }, + "00134_00001-00178_00002" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00044_00002-00120_00001" : { + "minimal_similarity" : 0.1103448275862069, + "maximum_similarity" : 0.11764705882352941, + "matched_token_number" : 16 + }, + "00141_00002-00184_00003" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00097_00002-00133_00001" : { + "minimal_similarity" : 0.07738095238095238, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00141_00002-00184_00002" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00140_00001-00202_00003" : { + "minimal_similarity" : 0.07092198581560284, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00013_00002-00141_00002" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.15037593984962405, + "matched_token_number" : 20 + }, + "00000_00003-00013_00002" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00135_00001-00145_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.21428571428571427, + "matched_token_number" : 36 + }, + "00097_00002-00113_00002" : { + "minimal_similarity" : 0.07784431137724551, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00140_00001-00202_00002" : { + "minimal_similarity" : 0.07092198581560284, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00092_00001-00187_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00113_00002-00177_00003" : { + "minimal_similarity" : 0.9940476190476191, + "maximum_similarity" : 1.0, + "matched_token_number" : 167 + }, + "00129_00008-00153_00001" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17857142857142858, + "matched_token_number" : 30 + }, + "00000_00002-00136_00002" : { + "minimal_similarity" : 0.0410958904109589, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00136_00002-00137_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00142_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00130_00002-00140_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 133 + }, + "00195_00002-00201_00001" : { + "minimal_similarity" : 0.12418300653594772, + "maximum_similarity" : 0.14615384615384616, + "matched_token_number" : 19 + }, + "00130_00002-00160_00001" : { + "minimal_similarity" : 0.16911764705882354, + "maximum_similarity" : 0.17293233082706766, + "matched_token_number" : 23 + }, + "00031_00003-00156_00002" : { + "minimal_similarity" : 0.10674157303370786, + "maximum_similarity" : 0.16666666666666666, + "matched_token_number" : 19 + }, + "00031_00003-00156_00003" : { + "minimal_similarity" : 0.10674157303370786, + "maximum_similarity" : 0.16666666666666666, + "matched_token_number" : 19 + }, + "00160_00001-00186_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00184_00003-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00031_00002-00136_00002" : { + "minimal_similarity" : 0.0821917808219178, + "maximum_similarity" : 0.14516129032258066, + "matched_token_number" : 18 + }, + "00160_00001-00186_00002" : { + "minimal_similarity" : 0.07386363636363637, + "maximum_similarity" : 0.09558823529411764, + "matched_token_number" : 13 + }, + "00133_00001-00193_00001" : { + "minimal_similarity" : 0.07142857142857142, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00120_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00184_00003-00203_00002" : { + "minimal_similarity" : 0.09655172413793103, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00155_00001-00187_00001" : { + "minimal_similarity" : 0.12878787878787878, + "maximum_similarity" : 0.136, + "matched_token_number" : 17 + }, + "00095_00003-00187_00001" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.09090909090909091, + "matched_token_number" : 12 + }, + "00031_00002-00077_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.07258064516129033, + "matched_token_number" : 9 + }, + "00140_00001-00192_00001" : { + "minimal_similarity" : 0.08387096774193549, + "maximum_similarity" : 0.09774436090225563, + "matched_token_number" : 13 + }, + "00140_00001-00192_00002" : { + "minimal_similarity" : 0.12030075187969924, + "maximum_similarity" : 0.12213740458015267, + "matched_token_number" : 16 + }, + "00092_00001-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00156_00002-00203_00002" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00095_00003-00154_00002" : { + "minimal_similarity" : 0.10891089108910891, + "maximum_similarity" : 0.13414634146341464, + "matched_token_number" : 22 + }, + "00147_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00120_00001-00136_00002" : { + "minimal_similarity" : 0.0547945205479452, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00133_00001-00192_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00133_00001-00192_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00130_00002-00147_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00201_00001" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00135_00001-00140_00001" : { + "minimal_similarity" : 0.20652173913043478, + "maximum_similarity" : 0.2857142857142857, + "matched_token_number" : 38 + }, + "00013_00002-00031_00003" : { + "minimal_similarity" : 0.16541353383458646, + "maximum_similarity" : 0.19298245614035087, + "matched_token_number" : 22 + }, + "00130_00002-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00013_00002-00031_00002" : { + "minimal_similarity" : 0.07518796992481203, + "maximum_similarity" : 0.08064516129032258, + "matched_token_number" : 10 + }, + "00005_00002-00142_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13071895424836602, + "matched_token_number" : 20 + }, + "00142_00001-00201_00001" : { + "minimal_similarity" : 0.12418300653594772, + "maximum_similarity" : 0.14615384615384616, + "matched_token_number" : 19 + }, + "00134_00001-00202_00002" : { + "minimal_similarity" : 0.07801418439716312, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00134_00001-00202_00003" : { + "minimal_similarity" : 0.07801418439716312, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00153_00001-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16071428571428573, + "matched_token_number" : 27 + }, + "00000_00003-00177_00003" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00153_00001-00186_00004" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00135_00001-00199_00001" : { + "minimal_similarity" : 0.05434782608695652, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00014_00001-00121_00001" : { + "minimal_similarity" : 0.27461139896373055, + "maximum_similarity" : 0.35333333333333333, + "matched_token_number" : 53 + }, + "00154_00002-00178_00002" : { + "minimal_similarity" : 0.8809523809523809, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00135_00001-00204_00001" : { + "minimal_similarity" : 0.05434782608695652, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 10 + }, + "00013_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00013_00002-00195_00002" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00000_00003-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00013_00002-00195_00001" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00120_00001-00131_00005" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13793103448275862, + "matched_token_number" : 20 + }, + "00142_00001-00145_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00120_00001-00134_00001" : { + "minimal_similarity" : 0.1724137931034483, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00077_00001-00183_00004" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.12244897959183673, + "matched_token_number" : 18 + }, + "00120_00001-00187_00001" : { + "minimal_similarity" : 0.0896551724137931, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00142_00001-00198_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00130_00002-00142_00001" : { + "minimal_similarity" : 0.17647058823529413, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00133_00001-00177_00003" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00134_00001-00141_00002" : { + "minimal_similarity" : 0.26, + "maximum_similarity" : 0.3333333333333333, + "matched_token_number" : 39 + }, + "00156_00002-00192_00002" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.06870229007633588, + "matched_token_number" : 9 + }, + "00156_00002-00192_00001" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.05806451612903226, + "matched_token_number" : 9 + }, + "00129_00008-00155_00001" : { + "minimal_similarity" : 0.1276595744680851, + "maximum_similarity" : 0.288, + "matched_token_number" : 36 + }, + "00000_00003-00031_00002" : { + "minimal_similarity" : 0.12837837837837837, + "maximum_similarity" : 0.1532258064516129, + "matched_token_number" : 19 + }, + "00000_00003-00031_00003" : { + "minimal_similarity" : 0.12837837837837837, + "maximum_similarity" : 0.16666666666666666, + "matched_token_number" : 19 + }, + "00147_00001-00184_00002" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.10638297872340426, + "matched_token_number" : 10 + }, + "00147_00001-00184_00003" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.10638297872340426, + "matched_token_number" : 10 + }, + "00156_00002-00195_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00134_00001-00194_00001" : { + "minimal_similarity" : 0.26, + "maximum_similarity" : 0.3333333333333333, + "matched_token_number" : 39 + }, + "00156_00002-00195_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00095_00003-00138_00001" : { + "minimal_similarity" : 0.054455445544554455, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00005_00002-00126_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13793103448275862, + "matched_token_number" : 20 + }, + "00013_00002-00203_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00200_00002-00201_00001" : { + "minimal_similarity" : 0.1588235294117647, + "maximum_similarity" : 0.2076923076923077, + "matched_token_number" : 27 + }, + "00005_00002-00129_00008" : { + "minimal_similarity" : 0.03546099290780142, + "maximum_similarity" : 0.05291005291005291, + "matched_token_number" : 10 + }, + "00135_00001-00194_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.24, + "matched_token_number" : 36 + }, + "00119_00001-00121_00001" : { + "minimal_similarity" : 0.27461139896373055, + "maximum_similarity" : 0.35333333333333333, + "matched_token_number" : 53 + }, + "00137_00002-00138_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00135_00001-00201_00001" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00092_00001-00095_00003" : { + "minimal_similarity" : 0.054455445544554455, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00000_00005-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00003-00121_00001" : { + "minimal_similarity" : 0.21243523316062177, + "maximum_similarity" : 0.35964912280701755, + "matched_token_number" : 41 + }, + "00130_00002-00198_00001" : { + "minimal_similarity" : 0.045454545454545456, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00121_00001-00187_00001" : { + "minimal_similarity" : 0.12953367875647667, + "maximum_similarity" : 0.1893939393939394, + "matched_token_number" : 25 + }, + "00013_00002-00202_00003" : { + "minimal_similarity" : 0.1347517730496454, + "maximum_similarity" : 0.14285714285714285, + "matched_token_number" : 19 + }, + "00135_00001-00202_00002" : { + "minimal_similarity" : 0.125, + "maximum_similarity" : 0.16312056737588654, + "matched_token_number" : 23 + }, + "00142_00001-00147_00001" : { + "minimal_similarity" : 0.11764705882352941, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00141_00002-00183_00004" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.07482993197278912, + "matched_token_number" : 11 + }, + "00147_00001-00186_00002" : { + "minimal_similarity" : 0.056818181818181816, + "maximum_similarity" : 0.06944444444444445, + "matched_token_number" : 10 + }, + "00147_00001-00186_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00005-00156_00002" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.06040268456375839, + "matched_token_number" : 9 + }, + "00000_00005-00156_00003" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.06040268456375839, + "matched_token_number" : 9 + }, + "00044_00002-00125_00001" : { + "minimal_similarity" : 0.16071428571428573, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00121_00001-00136_00002" : { + "minimal_similarity" : 0.1278538812785388, + "maximum_similarity" : 0.14507772020725387, + "matched_token_number" : 28 + }, + "00000_00001-00111_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00077_00001-00186_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.11363636363636363, + "matched_token_number" : 20 + }, + "00134_00001-00192_00001" : { + "minimal_similarity" : 0.07096774193548387, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00134_00001-00192_00002" : { + "minimal_similarity" : 0.11450381679389313, + "maximum_similarity" : 0.1282051282051282, + "matched_token_number" : 15 + }, + "00156_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00135_00001-00196_00001" : { + "minimal_similarity" : 0.06060606060606061, + "maximum_similarity" : 0.11956521739130435, + "matched_token_number" : 22 + }, + "00077_00001-00186_00004" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00130_00002-00145_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00135_00001-00202_00003" : { + "minimal_similarity" : 0.11413043478260869, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 21 + }, + "00031_00002-00131_00005" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.07258064516129033, + "matched_token_number" : 9 + }, + "00130_00002-00203_00002" : { + "minimal_similarity" : 0.0896551724137931, + "maximum_similarity" : 0.09774436090225563, + "matched_token_number" : 13 + }, + "00130_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00200_00002-00202_00003" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00013_00002-00202_00002" : { + "minimal_similarity" : 0.19858156028368795, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 28 + }, + "00077_00001-00134_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.07692307692307693, + "matched_token_number" : 9 + }, + "00142_00001-00204_00001" : { + "minimal_similarity" : 0.08496732026143791, + "maximum_similarity" : 0.10833333333333334, + "matched_token_number" : 13 + }, + "00119_00001-00178_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00130_00002-00136_00002" : { + "minimal_similarity" : 0.0502283105022831, + "maximum_similarity" : 0.08270676691729323, + "matched_token_number" : 11 + }, + "00129_00008-00156_00003" : { + "minimal_similarity" : 0.03900709219858156, + "maximum_similarity" : 0.06179775280898876, + "matched_token_number" : 11 + }, + "00005_00002-00178_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00129_00008-00156_00002" : { + "minimal_similarity" : 0.03900709219858156, + "maximum_similarity" : 0.06179775280898876, + "matched_token_number" : 11 + }, + "00113_00002-00194_00001" : { + "minimal_similarity" : 0.2634730538922156, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00119_00001-00203_00002" : { + "minimal_similarity" : 0.15333333333333332, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00044_00002-00092_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.07352941176470588, + "matched_token_number" : 10 + }, + "00184_00002-00196_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00137_00002-00147_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00138_00001-00187_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00125_00001-00177_00003" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00196_00001-00204_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00131_00005-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00135_00001-00155_00001" : { + "minimal_similarity" : 0.1358695652173913, + "maximum_similarity" : 0.2, + "matched_token_number" : 25 + }, + "00000_00003-00141_00002" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00031_00003-00120_00001" : { + "minimal_similarity" : 0.09655172413793103, + "maximum_similarity" : 0.12280701754385964, + "matched_token_number" : 14 + }, + "00120_00001-00140_00001" : { + "minimal_similarity" : 0.18620689655172415, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00014_00001-00183_00004" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.07482993197278912, + "matched_token_number" : 11 + }, + "00147_00001-00192_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00003-00133_00001" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00147_00001-00192_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00154_00002-00177_00003" : { + "minimal_similarity" : 0.8809523809523809, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00000_00001-00141_00002" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2125984251968504, + "matched_token_number" : 27 + }, + "00031_00002-00133_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00178_00002-00192_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00178_00002-00192_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00013_00002-00177_00003" : { + "minimal_similarity" : 0.18452380952380953, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00005_00002-00160_00001" : { + "minimal_similarity" : 0.0582010582010582, + "maximum_similarity" : 0.08088235294117647, + "matched_token_number" : 11 + }, + "00014_00001-00111_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00127_00002-00130_00002" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00077_00001-00119_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00000_00002-00120_00001" : { + "minimal_similarity" : 0.1310344827586207, + "maximum_similarity" : 0.13194444444444445, + "matched_token_number" : 19 + }, + "00000_00003-00120_00001" : { + "minimal_similarity" : 0.12837837837837837, + "maximum_similarity" : 0.1310344827586207, + "matched_token_number" : 19 + }, + "00013_00002-00130_00002" : { + "minimal_similarity" : 0.08270676691729323, + "maximum_similarity" : 0.08270676691729323, + "matched_token_number" : 11 + }, + "00044_00002-00097_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00111_00001-00135_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.21428571428571427, + "matched_token_number" : 36 + }, + "00130_00002-00131_00005" : { + "minimal_similarity" : 0.06349206349206349, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00000_00005-00120_00001" : { + "minimal_similarity" : 0.06711409395973154, + "maximum_similarity" : 0.06896551724137931, + "matched_token_number" : 10 + }, + "00145_00001-00192_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00135_00001-00147_00001" : { + "minimal_similarity" : 0.08152173913043478, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00003-00095_00003" : { + "minimal_similarity" : 0.09900990099009901, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00097_00002-00142_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00127_00002-00177_00003" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00031_00003-00192_00002" : { + "minimal_similarity" : 0.29770992366412213, + "maximum_similarity" : 0.34210526315789475, + "matched_token_number" : 39 + }, + "00192_00002-00195_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.1297709923664122, + "matched_token_number" : 17 + }, + "00113_00002-00199_00001" : { + "minimal_similarity" : 0.059880239520958084, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00031_00003-00192_00001" : { + "minimal_similarity" : 0.21935483870967742, + "maximum_similarity" : 0.2982456140350877, + "matched_token_number" : 34 + }, + "00145_00001-00192_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00000_00002-00095_00003" : { + "minimal_similarity" : 0.09900990099009901, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00154_00002-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06707317073170732, + "matched_token_number" : 11 + }, + "00192_00002-00195_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.1297709923664122, + "matched_token_number" : 17 + }, + "00005_00002-00199_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.09473684210526316, + "matched_token_number" : 9 + }, + "00154_00002-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06707317073170732, + "matched_token_number" : 11 + }, + "00000_00005-00031_00002" : { + "minimal_similarity" : 0.12751677852348994, + "maximum_similarity" : 0.1532258064516129, + "matched_token_number" : 19 + }, + "00000_00005-00031_00003" : { + "minimal_similarity" : 0.06711409395973154, + "maximum_similarity" : 0.08771929824561403, + "matched_token_number" : 10 + }, + "00156_00002-00202_00002" : { + "minimal_similarity" : 0.11797752808988764, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 21 + }, + "00120_00001-00137_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00097_00002-00201_00001" : { + "minimal_similarity" : 0.06756756756756757, + "maximum_similarity" : 0.07692307692307693, + "matched_token_number" : 10 + }, + "00092_00001-00178_00002" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00133_00001-00147_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00156_00002-00202_00003" : { + "minimal_similarity" : 0.11797752808988764, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 21 + }, + "00156_00003-00202_00002" : { + "minimal_similarity" : 0.11797752808988764, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 21 + }, + "00156_00003-00202_00003" : { + "minimal_similarity" : 0.11797752808988764, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 21 + }, + "00000_00005-00044_00002" : { + "minimal_similarity" : 0.2080536912751678, + "maximum_similarity" : 0.22794117647058823, + "matched_token_number" : 31 + }, + "00000_00002-00154_00002" : { + "minimal_similarity" : 0.054878048780487805, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00044_00002-00156_00002" : { + "minimal_similarity" : 0.10112359550561797, + "maximum_similarity" : 0.1323529411764706, + "matched_token_number" : 18 + }, + "00126_00002-00145_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00044_00002-00156_00003" : { + "minimal_similarity" : 0.10112359550561797, + "maximum_similarity" : 0.1323529411764706, + "matched_token_number" : 18 + }, + "00000_00003-00154_00002" : { + "minimal_similarity" : 0.054878048780487805, + "maximum_similarity" : 0.060810810810810814, + "matched_token_number" : 9 + }, + "00154_00002-00202_00002" : { + "minimal_similarity" : 0.13414634146341464, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00113_00002-00135_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.2155688622754491, + "matched_token_number" : 36 + }, + "00154_00002-00202_00003" : { + "minimal_similarity" : 0.13414634146341464, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00137_00002-00142_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00000_00001-00044_00002" : { + "minimal_similarity" : 0.33088235294117646, + "maximum_similarity" : 0.3543307086614173, + "matched_token_number" : 45 + }, + "00198_00001-00204_00001" : { + "minimal_similarity" : 0.1717171717171717, + "maximum_similarity" : 0.2833333333333333, + "matched_token_number" : 34 + }, + "00178_00002-00197_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00142_00001-00194_00001" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00129_00008-00177_00003" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17857142857142858, + "matched_token_number" : 30 + }, + "00156_00002-00156_00003" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 178 + }, + "00186_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00005-00125_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00095_00003-00192_00002" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.0916030534351145, + "matched_token_number" : 12 + }, + "00000_00003-00125_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00044_00002-00202_00003" : { + "minimal_similarity" : 0.44680851063829785, + "maximum_similarity" : 0.4632352941176471, + "matched_token_number" : 63 + }, + "00013_00002-00135_00001" : { + "minimal_similarity" : 0.11413043478260869, + "maximum_similarity" : 0.15789473684210525, + "matched_token_number" : 21 + }, + "00044_00002-00202_00002" : { + "minimal_similarity" : 0.3829787234042553, + "maximum_similarity" : 0.39705882352941174, + "matched_token_number" : 54 + }, + "00111_00001-00130_00002" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00005_00002-00194_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00095_00003-00155_00001" : { + "minimal_similarity" : 0.10891089108910891, + "maximum_similarity" : 0.176, + "matched_token_number" : 22 + }, + "00160_00001-00197_00001" : { + "minimal_similarity" : 0.0661764705882353, + "maximum_similarity" : 0.06818181818181818, + "matched_token_number" : 9 + }, + "00195_00002-00198_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00138_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00145_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00095_00003-00192_00001" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.07741935483870968, + "matched_token_number" : 12 + }, + "00077_00001-00203_00002" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13793103448275862, + "matched_token_number" : 20 + }, + "00000_00002-00031_00003" : { + "minimal_similarity" : 0.14583333333333334, + "maximum_similarity" : 0.18421052631578946, + "matched_token_number" : 21 + }, + "00138_00001-00153_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00197_00001-00202_00003" : { + "minimal_similarity" : 0.6028368794326241, + "maximum_similarity" : 0.6439393939393939, + "matched_token_number" : 85 + }, + "00131_00005-00147_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00134_00001-00204_00001" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.17094017094017094, + "matched_token_number" : 20 + }, + "00113_00002-00130_00002" : { + "minimal_similarity" : 0.3652694610778443, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00136_00002-00204_00001" : { + "minimal_similarity" : 0.045662100456621, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 10 + }, + "00187_00001-00202_00002" : { + "minimal_similarity" : 0.5390070921985816, + "maximum_similarity" : 0.5757575757575758, + "matched_token_number" : 76 + }, + "00000_00002-00031_00002" : { + "minimal_similarity" : 0.13194444444444445, + "maximum_similarity" : 0.1532258064516129, + "matched_token_number" : 19 + }, + "00187_00001-00202_00003" : { + "minimal_similarity" : 0.6028368794326241, + "maximum_similarity" : 0.6439393939393939, + "matched_token_number" : 85 + }, + "00197_00001-00202_00002" : { + "minimal_similarity" : 0.5390070921985816, + "maximum_similarity" : 0.5757575757575758, + "matched_token_number" : 76 + }, + "00121_00001-00147_00001" : { + "minimal_similarity" : 0.07772020725388601, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00005-00138_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00130_00002-00178_00002" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00153_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00005_00002-00013_00002" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00000_00002-00192_00002" : { + "minimal_similarity" : 0.2013888888888889, + "maximum_similarity" : 0.22137404580152673, + "matched_token_number" : 29 + }, + "00000_00002-00192_00001" : { + "minimal_similarity" : 0.1870967741935484, + "maximum_similarity" : 0.2013888888888889, + "matched_token_number" : 29 + }, + "00129_00008-00202_00002" : { + "minimal_similarity" : 0.07801418439716312, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00031_00002-00141_00002" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00127_00002-00135_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.21428571428571427, + "matched_token_number" : 36 + }, + "00129_00008-00202_00003" : { + "minimal_similarity" : 0.07801418439716312, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00145_00001-00154_00002" : { + "minimal_similarity" : 0.8809523809523809, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00014_00001-00154_00002" : { + "minimal_similarity" : 0.2682926829268293, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00133_00001-00201_00001" : { + "minimal_similarity" : 0.05357142857142857, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00134_00001-00153_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00111_00001-00178_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00095_00003-00134_00001" : { + "minimal_similarity" : 0.09405940594059406, + "maximum_similarity" : 0.1623931623931624, + "matched_token_number" : 19 + }, + "00031_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00003-00125_00001" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00000_00002-00133_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00000_00005-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00133_00001-00142_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00120_00001-00204_00001" : { + "minimal_similarity" : 0.0896551724137931, + "maximum_similarity" : 0.10833333333333334, + "matched_token_number" : 13 + }, + "00194_00001-00204_00001" : { + "minimal_similarity" : 0.15333333333333332, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00113_00002-00127_00002" : { + "minimal_similarity" : 0.9940476190476191, + "maximum_similarity" : 1.0, + "matched_token_number" : 167 + }, + "00113_00002-00160_00001" : { + "minimal_similarity" : 0.1317365269461078, + "maximum_similarity" : 0.16176470588235295, + "matched_token_number" : 22 + }, + "00142_00001-00186_00002" : { + "minimal_similarity" : 0.09090909090909091, + "maximum_similarity" : 0.10457516339869281, + "matched_token_number" : 16 + }, + "00095_00003-00133_00001" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.13690476190476192, + "matched_token_number" : 23 + }, + "00031_00002-00138_00001" : { + "minimal_similarity" : 0.0763888888888889, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00120_00001-00145_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00000_00005-00197_00001" : { + "minimal_similarity" : 0.14093959731543623, + "maximum_similarity" : 0.1590909090909091, + "matched_token_number" : 21 + }, + "00147_00001-00197_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00014_00001-00153_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00142_00001-00186_00004" : { + "minimal_similarity" : 0.10457516339869281, + "maximum_similarity" : 0.1111111111111111, + "matched_token_number" : 16 + }, + "00145_00001-00184_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00111_00001-00177_00003" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00097_00002-00134_00001" : { + "minimal_similarity" : 0.20945945945945946, + "maximum_similarity" : 0.26495726495726496, + "matched_token_number" : 31 + }, + "00193_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00140_00001-00203_00002" : { + "minimal_similarity" : 0.0896551724137931, + "maximum_similarity" : 0.09774436090225563, + "matched_token_number" : 13 + }, + "00125_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00125_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00092_00001-00186_00002" : { + "minimal_similarity" : 0.056818181818181816, + "maximum_similarity" : 0.06944444444444445, + "matched_token_number" : 10 + }, + "00121_00001-00177_00003" : { + "minimal_similarity" : 0.7046632124352331, + "maximum_similarity" : 0.8095238095238095, + "matched_token_number" : 136 + }, + "00031_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00092_00001-00186_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00003-00044_00002" : { + "minimal_similarity" : 0.20588235294117646, + "maximum_similarity" : 0.24561403508771928, + "matched_token_number" : 28 + }, + "00119_00001-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.18, + "matched_token_number" : 27 + }, + "00119_00001-00186_00004" : { + "minimal_similarity" : 0.17333333333333334, + "maximum_similarity" : 0.18055555555555555, + "matched_token_number" : 26 + }, + "00141_00002-00200_00002" : { + "minimal_similarity" : 0.058823529411764705, + "maximum_similarity" : 0.06666666666666667, + "matched_token_number" : 10 + }, + "00177_00003-00203_00002" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00135_00001-00184_00002" : { + "minimal_similarity" : 0.05434782608695652, + "maximum_similarity" : 0.10638297872340426, + "matched_token_number" : 10 + }, + "00145_00001-00184_00003" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00135_00001-00184_00003" : { + "minimal_similarity" : 0.05434782608695652, + "maximum_similarity" : 0.10638297872340426, + "matched_token_number" : 10 + }, + "00147_00001-00155_00001" : { + "minimal_similarity" : 0.10416666666666667, + "maximum_similarity" : 0.12, + "matched_token_number" : 15 + }, + "00153_00001-00154_00002" : { + "minimal_similarity" : 0.8809523809523809, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00126_00002-00141_00002" : { + "minimal_similarity" : 0.31333333333333335, + "maximum_similarity" : 0.32413793103448274, + "matched_token_number" : 47 + }, + "00131_00005-00133_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00129_00008-00186_00004" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 12 + }, + "00129_00008-00186_00002" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.06818181818181818, + "matched_token_number" : 12 + }, + "00125_00001-00147_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00137_00002-00177_00003" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00193_00001-00202_00003" : { + "minimal_similarity" : 0.11515151515151516, + "maximum_similarity" : 0.1347517730496454, + "matched_token_number" : 19 + }, + "00197_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00193_00001-00202_00002" : { + "minimal_similarity" : 0.12727272727272726, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 21 + }, + "00000_00005-00129_00008" : { + "minimal_similarity" : 0.031914893617021274, + "maximum_similarity" : 0.06040268456375839, + "matched_token_number" : 9 + }, + "00137_00002-00184_00003" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00031_00003-00196_00001" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.07894736842105263, + "matched_token_number" : 9 + }, + "00160_00001-00198_00001" : { + "minimal_similarity" : 0.05555555555555555, + "maximum_similarity" : 0.08088235294117647, + "matched_token_number" : 11 + }, + "00137_00002-00184_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00095_00003-00120_00001" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00126_00002-00204_00001" : { + "minimal_similarity" : 0.0896551724137931, + "maximum_similarity" : 0.10833333333333334, + "matched_token_number" : 13 + }, + "00195_00002-00197_00001" : { + "minimal_similarity" : 0.08496732026143791, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00113_00002-00136_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.11377245508982035, + "matched_token_number" : 19 + }, + "00095_00003-00126_00002" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00111_00001-00202_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00014_00001-00204_00001" : { + "minimal_similarity" : 0.15333333333333332, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00111_00001-00202_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00131_00005-00138_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00031_00003-00129_00008" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 12 + }, + "00125_00001-00142_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00127_00002-00147_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00005-00137_00002" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00156_00003-00203_00002" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00111_00001-00203_00002" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00129_00008-00178_00002" : { + "minimal_similarity" : 0.10638297872340426, + "maximum_similarity" : 0.17857142857142858, + "matched_token_number" : 30 + }, + "00131_00005-00134_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.07692307692307693, + "matched_token_number" : 9 + }, + "00097_00002-00138_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00001-00201_00001" : { + "minimal_similarity" : 0.06923076923076923, + "maximum_similarity" : 0.07086614173228346, + "matched_token_number" : 9 + }, + "00044_00002-00203_00002" : { + "minimal_similarity" : 0.2689655172413793, + "maximum_similarity" : 0.2867647058823529, + "matched_token_number" : 39 + }, + "00095_00003-00125_00001" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.13690476190476192, + "matched_token_number" : 23 + }, + "00147_00001-00154_00002" : { + "minimal_similarity" : 0.07926829268292683, + "maximum_similarity" : 0.09027777777777778, + "matched_token_number" : 13 + }, + "00113_00002-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.2215568862275449, + "matched_token_number" : 37 + }, + "00127_00002-00142_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00199_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00141_00002-00145_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00126_00002-00133_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00154_00002-00155_00001" : { + "minimal_similarity" : 0.23780487804878048, + "maximum_similarity" : 0.312, + "matched_token_number" : 39 + }, + "00031_00002-00111_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00000_00001-00137_00002" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00097_00002-00202_00003" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00145_00001-00197_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00097_00002-00202_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00155_00001" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.072, + "matched_token_number" : 9 + }, + "00126_00002-00138_00001" : { + "minimal_similarity" : 0.12413793103448276, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00097_00002-00147_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00154_00002-00203_00002" : { + "minimal_similarity" : 0.1402439024390244, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00000_00002-00125_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00044_00002-00147_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.07352941176470588, + "matched_token_number" : 10 + }, + "00031_00003-00197_00001" : { + "minimal_similarity" : 0.26515151515151514, + "maximum_similarity" : 0.30701754385964913, + "matched_token_number" : 35 + }, + "00031_00003-00137_00002" : { + "minimal_similarity" : 0.14285714285714285, + "maximum_similarity" : 0.21052631578947367, + "matched_token_number" : 24 + }, + "00031_00002-00147_00001" : { + "minimal_similarity" : 0.0763888888888889, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00000_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00126_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00133_00001-00154_00002" : { + "minimal_similarity" : 0.8809523809523809, + "maximum_similarity" : 0.9024390243902439, + "matched_token_number" : 148 + }, + "00199_00001-00202_00002" : { + "minimal_similarity" : 0.07092198581560284, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00131_00005-00202_00003" : { + "minimal_similarity" : 0.1693121693121693, + "maximum_similarity" : 0.22695035460992907, + "matched_token_number" : 32 + }, + "00199_00001-00202_00003" : { + "minimal_similarity" : 0.07092198581560284, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00125_00001-00203_00002" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00014_00001-00200_00002" : { + "minimal_similarity" : 0.058823529411764705, + "maximum_similarity" : 0.06666666666666667, + "matched_token_number" : 10 + }, + "00000_00005-00192_00001" : { + "minimal_similarity" : 0.12903225806451613, + "maximum_similarity" : 0.1342281879194631, + "matched_token_number" : 20 + }, + "00077_00001-00113_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.11377245508982035, + "matched_token_number" : 19 + }, + "00000_00005-00192_00002" : { + "minimal_similarity" : 0.1342281879194631, + "maximum_similarity" : 0.15267175572519084, + "matched_token_number" : 20 + }, + "00111_00001-00136_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00183_00004-00203_00002" : { + "minimal_similarity" : 0.061224489795918366, + "maximum_similarity" : 0.06206896551724138, + "matched_token_number" : 9 + }, + "00131_00005-00202_00002" : { + "minimal_similarity" : 0.21693121693121692, + "maximum_similarity" : 0.2907801418439716, + "matched_token_number" : 41 + }, + "00126_00002-00140_00001" : { + "minimal_similarity" : 0.18620689655172415, + "maximum_similarity" : 0.20300751879699247, + "matched_token_number" : 27 + }, + "00138_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00125_00001-00201_00001" : { + "minimal_similarity" : 0.05357142857142857, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00113_00002-00193_00001" : { + "minimal_similarity" : 0.0718562874251497, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00186_00002-00192_00001" : { + "minimal_similarity" : 0.30113636363636365, + "maximum_similarity" : 0.3419354838709677, + "matched_token_number" : 53 + }, + "00000_00001-00140_00001" : { + "minimal_similarity" : 0.12030075187969924, + "maximum_similarity" : 0.12598425196850394, + "matched_token_number" : 16 + }, + "00133_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00186_00002-00192_00002" : { + "minimal_similarity" : 0.29545454545454547, + "maximum_similarity" : 0.3969465648854962, + "matched_token_number" : 52 + }, + "00140_00001-00156_00003" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00133_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00131_00005-00141_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.14, + "matched_token_number" : 21 + }, + "00198_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00127_00002-00202_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00183_00004-00202_00002" : { + "minimal_similarity" : 0.08163265306122448, + "maximum_similarity" : 0.0851063829787234, + "matched_token_number" : 12 + }, + "00031_00002-00044_00002" : { + "minimal_similarity" : 0.22058823529411764, + "maximum_similarity" : 0.24193548387096775, + "matched_token_number" : 30 + }, + "00014_00001-00187_00001" : { + "minimal_similarity" : 0.08666666666666667, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00140_00001-00156_00002" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00127_00002-00202_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00183_00004-00202_00003" : { + "minimal_similarity" : 0.07482993197278912, + "maximum_similarity" : 0.07801418439716312, + "matched_token_number" : 11 + }, + "00000_00005-00133_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00192_00001-00203_00002" : { + "minimal_similarity" : 0.36774193548387096, + "maximum_similarity" : 0.3931034482758621, + "matched_token_number" : 57 + }, + "00014_00001-00140_00001" : { + "minimal_similarity" : 0.32666666666666666, + "maximum_similarity" : 0.3684210526315789, + "matched_token_number" : 49 + }, + "00138_00001-00195_00001" : { + "minimal_similarity" : 0.11764705882352941, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00092_00001-00119_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00138_00001-00195_00002" : { + "minimal_similarity" : 0.11764705882352941, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00126_00002-00137_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00000_00001-00133_00001" : { + "minimal_similarity" : 0.1488095238095238, + "maximum_similarity" : 0.1968503937007874, + "matched_token_number" : 25 + }, + "00113_00002-00195_00001" : { + "minimal_similarity" : 0.2155688622754491, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00119_00001-00204_00001" : { + "minimal_similarity" : 0.15333333333333332, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00113_00002-00195_00002" : { + "minimal_similarity" : 0.2155688622754491, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00031_00003-00138_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.08771929824561403, + "matched_token_number" : 10 + }, + "00145_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00111_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00000_00005-00134_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00133_00001-00155_00001" : { + "minimal_similarity" : 0.30357142857142855, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00131_00005-00142_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13071895424836602, + "matched_token_number" : 20 + }, + "00095_00003-00121_00001" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.11917098445595854, + "matched_token_number" : 23 + }, + "00183_00004-00201_00001" : { + "minimal_similarity" : 0.16326530612244897, + "maximum_similarity" : 0.18461538461538463, + "matched_token_number" : 24 + }, + "00125_00001-00202_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00125_00001-00202_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00127_00002-00203_00002" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00000_00001-00134_00001" : { + "minimal_similarity" : 0.09448818897637795, + "maximum_similarity" : 0.10256410256410256, + "matched_token_number" : 12 + }, + "00131_00005-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00126_00002-00136_00002" : { + "minimal_similarity" : 0.0547945205479452, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00192_00001-00204_00001" : { + "minimal_similarity" : 0.2, + "maximum_similarity" : 0.25833333333333336, + "matched_token_number" : 31 + }, + "00014_00001-00141_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 150 + }, + "00138_00001-00194_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00129_00008-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00121_00001-00178_00002" : { + "minimal_similarity" : 0.7046632124352331, + "maximum_similarity" : 0.8095238095238095, + "matched_token_number" : 136 + }, + "00077_00001-00147_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00147_00001-00198_00001" : { + "minimal_similarity" : 0.050505050505050504, + "maximum_similarity" : 0.06944444444444445, + "matched_token_number" : 10 + }, + "00092_00001-00111_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00092_00001-00202_00003" : { + "minimal_similarity" : 0.08333333333333333, + "maximum_similarity" : 0.0851063829787234, + "matched_token_number" : 12 + }, + "00140_00001-00187_00001" : { + "minimal_similarity" : 0.09774436090225563, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00121_00001-00203_00002" : { + "minimal_similarity" : 0.07772020725388601, + "maximum_similarity" : 0.10344827586206896, + "matched_token_number" : 15 + }, + "00092_00001-00202_00002" : { + "minimal_similarity" : 0.08333333333333333, + "maximum_similarity" : 0.0851063829787234, + "matched_token_number" : 12 + }, + "00154_00002-00184_00002" : { + "minimal_similarity" : 0.15853658536585366, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00154_00002-00184_00003" : { + "minimal_similarity" : 0.15853658536585366, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00145_00001-00193_00001" : { + "minimal_similarity" : 0.07142857142857142, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00113_00002-00134_00001" : { + "minimal_similarity" : 0.1497005988023952, + "maximum_similarity" : 0.21367521367521367, + "matched_token_number" : 25 + }, + "00092_00001-00177_00003" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00031_00002-00140_00001" : { + "minimal_similarity" : 0.13533834586466165, + "maximum_similarity" : 0.14516129032258066, + "matched_token_number" : 18 + }, + "00153_00001-00197_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00013_00002-00131_00005" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00127_00002-00201_00001" : { + "minimal_similarity" : 0.05357142857142857, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00142_00001-00153_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00120_00001-00178_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00095_00003-00129_00008" : { + "minimal_similarity" : 0.09219858156028368, + "maximum_similarity" : 0.12871287128712872, + "matched_token_number" : 26 + }, + "00000_00003-00187_00001" : { + "minimal_similarity" : 0.20270270270270271, + "maximum_similarity" : 0.22727272727272727, + "matched_token_number" : 30 + }, + "00141_00002-00147_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00186_00004-00201_00001" : { + "minimal_similarity" : 0.0625, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00014_00001-00201_00001" : { + "minimal_similarity" : 0.24, + "maximum_similarity" : 0.27692307692307694, + "matched_token_number" : 36 + }, + "00156_00003-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00077_00001-00142_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.13071895424836602, + "matched_token_number" : 20 + }, + "00147_00001-00193_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00002-00193_00001" : { + "minimal_similarity" : 0.06666666666666667, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00014_00001-00184_00002" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00014_00001-00184_00003" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00192_00001-00200_00002" : { + "minimal_similarity" : 0.052941176470588235, + "maximum_similarity" : 0.05806451612903226, + "matched_token_number" : 9 + }, + "00097_00002-00200_00002" : { + "minimal_similarity" : 0.07647058823529412, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00000_00005-00193_00001" : { + "minimal_similarity" : 0.06666666666666667, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00134_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00156_00002-00184_00003" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00156_00002-00184_00002" : { + "minimal_similarity" : 0.06741573033707865, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00186_00002-00195_00001" : { + "minimal_similarity" : 0.09090909090909091, + "maximum_similarity" : 0.10457516339869281, + "matched_token_number" : 16 + }, + "00031_00002-00145_00001" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00186_00002-00195_00002" : { + "minimal_similarity" : 0.09090909090909091, + "maximum_similarity" : 0.10457516339869281, + "matched_token_number" : 16 + }, + "00178_00002-00198_00001" : { + "minimal_similarity" : 0.18686868686868688, + "maximum_similarity" : 0.22023809523809523, + "matched_token_number" : 37 + }, + "00031_00003-00198_00001" : { + "minimal_similarity" : 0.10101010101010101, + "maximum_similarity" : 0.17543859649122806, + "matched_token_number" : 20 + }, + "00005_00002-00137_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00000_00003-00113_00002" : { + "minimal_similarity" : 0.11976047904191617, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00187_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00003-00153_00001" : { + "minimal_similarity" : 0.11904761904761904, + "maximum_similarity" : 0.13513513513513514, + "matched_token_number" : 20 + }, + "00153_00001-00192_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.1984732824427481, + "matched_token_number" : 26 + }, + "00134_00001-00156_00002" : { + "minimal_similarity" : 0.0898876404494382, + "maximum_similarity" : 0.13675213675213677, + "matched_token_number" : 16 + }, + "00153_00001-00192_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.14838709677419354, + "matched_token_number" : 23 + }, + "00134_00001-00156_00003" : { + "minimal_similarity" : 0.0898876404494382, + "maximum_similarity" : 0.13675213675213677, + "matched_token_number" : 16 + }, + "00198_00001-00203_00002" : { + "minimal_similarity" : 0.08080808080808081, + "maximum_similarity" : 0.1103448275862069, + "matched_token_number" : 16 + }, + "00137_00002-00141_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00130_00002-00137_00002" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00141_00002-00204_00001" : { + "minimal_similarity" : 0.15333333333333332, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00013_00002-00136_00002" : { + "minimal_similarity" : 0.0410958904109589, + "maximum_similarity" : 0.06766917293233082, + "matched_token_number" : 9 + }, + "00000_00002-00126_00002" : { + "minimal_similarity" : 0.1310344827586207, + "maximum_similarity" : 0.13194444444444445, + "matched_token_number" : 19 + }, + "00145_00001-00153_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00196_00001-00203_00002" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.06206896551724138, + "matched_token_number" : 9 + }, + "00044_00002-00184_00003" : { + "minimal_similarity" : 0.125, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00044_00002-00184_00002" : { + "minimal_similarity" : 0.125, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00129_00008-00142_00001" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.0784313725490196, + "matched_token_number" : 12 + }, + "00192_00002-00194_00001" : { + "minimal_similarity" : 0.11333333333333333, + "maximum_similarity" : 0.1297709923664122, + "matched_token_number" : 17 + }, + "00097_00002-00177_00003" : { + "minimal_similarity" : 0.07738095238095238, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00140_00001-00153_00001" : { + "minimal_similarity" : 0.3630952380952381, + "maximum_similarity" : 0.45864661654135336, + "matched_token_number" : 61 + }, + "00031_00003-00134_00001" : { + "minimal_similarity" : 0.18803418803418803, + "maximum_similarity" : 0.19298245614035087, + "matched_token_number" : 22 + }, + "00184_00002-00195_00002" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00031_00002-00204_00001" : { + "minimal_similarity" : 0.14516129032258066, + "maximum_similarity" : 0.15, + "matched_token_number" : 18 + }, + "00184_00002-00195_00001" : { + "minimal_similarity" : 0.1111111111111111, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00137_00002-00200_00002" : { + "minimal_similarity" : 0.06470588235294118, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00044_00002-00187_00001" : { + "minimal_similarity" : 0.40441176470588236, + "maximum_similarity" : 0.4166666666666667, + "matched_token_number" : 55 + }, + "00194_00001-00203_00002" : { + "minimal_similarity" : 0.15333333333333332, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00000_00005-00198_00001" : { + "minimal_similarity" : 0.05555555555555555, + "maximum_similarity" : 0.0738255033557047, + "matched_token_number" : 11 + }, + "00186_00002-00197_00001" : { + "minimal_similarity" : 0.3125, + "maximum_similarity" : 0.4166666666666667, + "matched_token_number" : 55 + }, + "00031_00002-00202_00003" : { + "minimal_similarity" : 0.2198581560283688, + "maximum_similarity" : 0.25, + "matched_token_number" : 31 + }, + "00126_00002-00178_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00155_00001-00192_00001" : { + "minimal_similarity" : 0.10967741935483871, + "maximum_similarity" : 0.136, + "matched_token_number" : 17 + }, + "00155_00001-00192_00002" : { + "minimal_similarity" : 0.13740458015267176, + "maximum_similarity" : 0.144, + "matched_token_number" : 18 + }, + "00031_00002-00202_00002" : { + "minimal_similarity" : 0.15602836879432624, + "maximum_similarity" : 0.1774193548387097, + "matched_token_number" : 22 + }, + "00192_00002-00196_00001" : { + "minimal_similarity" : 0.049586776859504134, + "maximum_similarity" : 0.13740458015267176, + "matched_token_number" : 18 + }, + "00160_00001-00194_00001" : { + "minimal_similarity" : 0.08, + "maximum_similarity" : 0.08823529411764706, + "matched_token_number" : 12 + }, + "00142_00001-00155_00001" : { + "minimal_similarity" : 0.23529411764705882, + "maximum_similarity" : 0.288, + "matched_token_number" : 36 + }, + "00178_00002-00193_00001" : { + "minimal_similarity" : 0.07142857142857142, + "maximum_similarity" : 0.07272727272727272, + "matched_token_number" : 12 + }, + "00134_00001-00154_00002" : { + "minimal_similarity" : 0.2073170731707317, + "maximum_similarity" : 0.2905982905982906, + "matched_token_number" : 34 + }, + "00178_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00192_00002-00199_00001" : { + "minimal_similarity" : 0.08396946564885496, + "maximum_similarity" : 0.11578947368421053, + "matched_token_number" : 11 + }, + "00135_00001-00183_00004" : { + "minimal_similarity" : 0.04891304347826087, + "maximum_similarity" : 0.061224489795918366, + "matched_token_number" : 9 + }, + "00135_00001-00186_00002" : { + "minimal_similarity" : 0.10869565217391304, + "maximum_similarity" : 0.11363636363636363, + "matched_token_number" : 20 + }, + "00092_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00193_00001-00203_00002" : { + "minimal_similarity" : 0.13333333333333333, + "maximum_similarity" : 0.15172413793103448, + "matched_token_number" : 22 + }, + "00125_00001-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16071428571428573, + "matched_token_number" : 27 + }, + "00193_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00130_00002-00135_00001" : { + "minimal_similarity" : 0.20652173913043478, + "maximum_similarity" : 0.2857142857142857, + "matched_token_number" : 38 + }, + "00097_00002-00141_00002" : { + "minimal_similarity" : 0.18666666666666668, + "maximum_similarity" : 0.1891891891891892, + "matched_token_number" : 28 + }, + "00125_00001-00186_00004" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00135_00001-00186_00004" : { + "minimal_similarity" : 0.16304347826086957, + "maximum_similarity" : 0.20833333333333334, + "matched_token_number" : 30 + }, + "00127_00002-00178_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00137_00002-00178_00002" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00135_00001-00154_00002" : { + "minimal_similarity" : 0.27717391304347827, + "maximum_similarity" : 0.31097560975609756, + "matched_token_number" : 51 + }, + "00129_00008-00147_00001" : { + "minimal_similarity" : 0.031914893617021274, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00000_00001-00014_00001" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2125984251968504, + "matched_token_number" : 27 + }, + "00092_00001-00113_00002" : { + "minimal_similarity" : 0.08982035928143713, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00005-00195_00002" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.06711409395973154, + "matched_token_number" : 10 + }, + "00000_00005-00195_00001" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.06711409395973154, + "matched_token_number" : 10 + }, + "00031_00002-00142_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00197_00001-00203_00002" : { + "minimal_similarity" : 0.5103448275862069, + "maximum_similarity" : 0.5606060606060606, + "matched_token_number" : 74 + }, + "00142_00001-00187_00001" : { + "minimal_similarity" : 0.08496732026143791, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00145_00001-00155_00001" : { + "minimal_similarity" : 0.30357142857142855, + "maximum_similarity" : 0.408, + "matched_token_number" : 51 + }, + "00141_00002-00201_00001" : { + "minimal_similarity" : 0.24, + "maximum_similarity" : 0.27692307692307694, + "matched_token_number" : 36 + }, + "00013_00002-00133_00001" : { + "minimal_similarity" : 0.18452380952380953, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00014_00001-00147_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00077_00001-00145_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00147_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00154_00002-00186_00004" : { + "minimal_similarity" : 0.17073170731707318, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00095_00003-00127_00002" : { + "minimal_similarity" : 0.11386138613861387, + "maximum_similarity" : 0.13690476190476192, + "matched_token_number" : 23 + }, + "00154_00002-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16463414634146342, + "matched_token_number" : 27 + }, + "00136_00002-00177_00003" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00129_00008-00203_00002" : { + "minimal_similarity" : 0.0425531914893617, + "maximum_similarity" : 0.08275862068965517, + "matched_token_number" : 12 + }, + "00155_00001-00160_00001" : { + "minimal_similarity" : 0.25, + "maximum_similarity" : 0.272, + "matched_token_number" : 34 + }, + "00119_00001-00187_00001" : { + "minimal_similarity" : 0.08666666666666667, + "maximum_similarity" : 0.09848484848484848, + "matched_token_number" : 13 + }, + "00187_00001-00204_00001" : { + "minimal_similarity" : 0.3939393939393939, + "maximum_similarity" : 0.43333333333333335, + "matched_token_number" : 52 + }, + "00141_00002-00142_00001" : { + "minimal_similarity" : 0.30718954248366015, + "maximum_similarity" : 0.31333333333333335, + "matched_token_number" : 47 + }, + "00044_00002-00113_00002" : { + "minimal_similarity" : 0.16167664670658682, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + }, + "00196_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00131_00005-00177_00003" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00153_00001-00195_00002" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00184_00002-00192_00002" : { + "minimal_similarity" : 0.16030534351145037, + "maximum_similarity" : 0.22340425531914893, + "matched_token_number" : 21 + }, + "00145_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00154_00002-00187_00001" : { + "minimal_similarity" : 0.1402439024390244, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00145_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00153_00001-00195_00001" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.23529411764705882, + "matched_token_number" : 36 + }, + "00135_00001-00156_00003" : { + "minimal_similarity" : 0.11956521739130435, + "maximum_similarity" : 0.12359550561797752, + "matched_token_number" : 22 + }, + "00129_00008-00204_00001" : { + "minimal_similarity" : 0.07801418439716312, + "maximum_similarity" : 0.18333333333333332, + "matched_token_number" : 22 + }, + "00135_00001-00156_00002" : { + "minimal_similarity" : 0.11956521739130435, + "maximum_similarity" : 0.12359550561797752, + "matched_token_number" : 22 + }, + "00184_00002-00192_00001" : { + "minimal_similarity" : 0.09032258064516129, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00160_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00092_00001-00140_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00120_00001-00203_00002" : { + "minimal_similarity" : 0.15172413793103448, + "maximum_similarity" : 0.15172413793103448, + "matched_token_number" : 22 + }, + "00077_00001-00204_00001" : { + "minimal_similarity" : 0.10582010582010581, + "maximum_similarity" : 0.16666666666666666, + "matched_token_number" : 20 + }, + "00125_00001-00184_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00125_00001-00184_00003" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00138_00001-00154_00002" : { + "minimal_similarity" : 0.07926829268292683, + "maximum_similarity" : 0.09027777777777778, + "matched_token_number" : 13 + }, + "00140_00001-00184_00003" : { + "minimal_similarity" : 0.12030075187969924, + "maximum_similarity" : 0.1702127659574468, + "matched_token_number" : 16 + }, + "00077_00001-00177_00003" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00140_00001-00184_00002" : { + "minimal_similarity" : 0.12030075187969924, + "maximum_similarity" : 0.1702127659574468, + "matched_token_number" : 16 + }, + "00184_00003-00186_00002" : { + "minimal_similarity" : 0.09659090909090909, + "maximum_similarity" : 0.18085106382978725, + "matched_token_number" : 17 + }, + "00153_00001-00194_00001" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00187_00001-00203_00002" : { + "minimal_similarity" : 0.5103448275862069, + "maximum_similarity" : 0.5606060606060606, + "matched_token_number" : 74 + }, + "00113_00002-00131_00005" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.11377245508982035, + "matched_token_number" : 19 + }, + "00121_00001-00200_00002" : { + "minimal_similarity" : 0.05699481865284974, + "maximum_similarity" : 0.06470588235294118, + "matched_token_number" : 11 + }, + "00095_00003-00199_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00002-00129_00008" : { + "minimal_similarity" : 0.031914893617021274, + "maximum_similarity" : 0.0625, + "matched_token_number" : 9 + }, + "00077_00001-00202_00003" : { + "minimal_similarity" : 0.1693121693121693, + "maximum_similarity" : 0.22695035460992907, + "matched_token_number" : 32 + }, + "00005_00002-00135_00001" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.09782608695652174, + "matched_token_number" : 18 + }, + "00077_00001-00202_00002" : { + "minimal_similarity" : 0.21693121693121692, + "maximum_similarity" : 0.2907801418439716, + "matched_token_number" : 41 + }, + "00137_00002-00202_00002" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00184_00003-00186_00004" : { + "minimal_similarity" : 0.1388888888888889, + "maximum_similarity" : 0.2127659574468085, + "matched_token_number" : 20 + }, + "00137_00002-00202_00003" : { + "minimal_similarity" : 0.13095238095238096, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00092_00001-00147_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 144 + }, + "00000_00002-00000_00005" : { + "minimal_similarity" : 0.8389261744966443, + "maximum_similarity" : 0.8680555555555556, + "matched_token_number" : 125 + }, + "00000_00002-00000_00003" : { + "minimal_similarity" : 0.972972972972973, + "maximum_similarity" : 1.0, + "matched_token_number" : 144 + }, + "00031_00003-00130_00002" : { + "minimal_similarity" : 0.10526315789473684, + "maximum_similarity" : 0.12280701754385964, + "matched_token_number" : 14 + }, + "00184_00002-00199_00001" : { + "minimal_similarity" : 0.9157894736842105, + "maximum_similarity" : 0.925531914893617, + "matched_token_number" : 87 + }, + "00177_00003-00187_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.17424242424242425, + "matched_token_number" : 23 + }, + "00000_00003-00184_00003" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00142_00001-00156_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00044_00002-00186_00004" : { + "minimal_similarity" : 0.4027777777777778, + "maximum_similarity" : 0.4264705882352941, + "matched_token_number" : 58 + }, + "00005_00002-00077_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 189 + }, + "00044_00002-00186_00002" : { + "minimal_similarity" : 0.6590909090909091, + "maximum_similarity" : 0.8529411764705882, + "matched_token_number" : 116 + }, + "00142_00001-00156_00003" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00013_00002-00134_00001" : { + "minimal_similarity" : 0.15037593984962405, + "maximum_similarity" : 0.17094017094017094, + "matched_token_number" : 20 + }, + "00195_00001-00201_00001" : { + "minimal_similarity" : 0.12418300653594772, + "maximum_similarity" : 0.14615384615384616, + "matched_token_number" : 19 + }, + "00092_00001-00141_00002" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00000_00003-00184_00002" : { + "minimal_similarity" : 0.060810810810810814, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00184_00002-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.1276595744680851, + "matched_token_number" : 12 + }, + "00136_00002-00178_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00156_00002-00186_00002" : { + "minimal_similarity" : 0.10112359550561797, + "maximum_similarity" : 0.10227272727272728, + "matched_token_number" : 18 + }, + "00000_00005-00005_00002" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.06040268456375839, + "matched_token_number" : 9 + }, + "00196_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00147_00001-00195_00001" : { + "minimal_similarity" : 0.11764705882352941, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00147_00001-00195_00002" : { + "minimal_similarity" : 0.11764705882352941, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00155_00001-00194_00001" : { + "minimal_similarity" : 0.3933333333333333, + "maximum_similarity" : 0.472, + "matched_token_number" : 59 + }, + "00156_00002-00186_00004" : { + "minimal_similarity" : 0.1404494382022472, + "maximum_similarity" : 0.1736111111111111, + "matched_token_number" : 25 + }, + "00160_00001-00192_00001" : { + "minimal_similarity" : 0.05806451612903226, + "maximum_similarity" : 0.0661764705882353, + "matched_token_number" : 9 + }, + "00120_00001-00201_00001" : { + "minimal_similarity" : 0.1310344827586207, + "maximum_similarity" : 0.14615384615384616, + "matched_token_number" : 19 + }, + "00160_00001-00192_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00186_00004-00204_00001" : { + "minimal_similarity" : 0.09722222222222222, + "maximum_similarity" : 0.11666666666666667, + "matched_token_number" : 14 + }, + "00133_00001-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16071428571428573, + "matched_token_number" : 27 + }, + "00133_00001-00186_00004" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00092_00001-00142_00001" : { + "minimal_similarity" : 0.11764705882352941, + "maximum_similarity" : 0.125, + "matched_token_number" : 18 + }, + "00136_00002-00203_00002" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1310344827586207, + "matched_token_number" : 19 + }, + "00000_00003-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00095_00003-00194_00001" : { + "minimal_similarity" : 0.10891089108910891, + "maximum_similarity" : 0.14666666666666667, + "matched_token_number" : 22 + }, + "00138_00001-00156_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00138_00001-00156_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.0763888888888889, + "matched_token_number" : 11 + }, + "00196_00001-00202_00003" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.06382978723404255, + "matched_token_number" : 9 + }, + "00196_00001-00202_00002" : { + "minimal_similarity" : 0.024793388429752067, + "maximum_similarity" : 0.06382978723404255, + "matched_token_number" : 9 + }, + "00155_00001-00193_00001" : { + "minimal_similarity" : 0.07272727272727272, + "maximum_similarity" : 0.096, + "matched_token_number" : 12 + }, + "00194_00001-00201_00001" : { + "minimal_similarity" : 0.24, + "maximum_similarity" : 0.27692307692307694, + "matched_token_number" : 36 + }, + "00184_00002-00194_00001" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00077_00001-00178_00002" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00097_00002-00178_00002" : { + "minimal_similarity" : 0.07738095238095238, + "maximum_similarity" : 0.08783783783783784, + "matched_token_number" : 13 + }, + "00136_00002-00202_00002" : { + "minimal_similarity" : 0.1050228310502283, + "maximum_similarity" : 0.16312056737588654, + "matched_token_number" : 23 + }, + "00134_00001-00184_00003" : { + "minimal_similarity" : 0.23076923076923078, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00136_00002-00202_00003" : { + "minimal_similarity" : 0.1461187214611872, + "maximum_similarity" : 0.22695035460992907, + "matched_token_number" : 32 + }, + "00135_00001-00153_00001" : { + "minimal_similarity" : 0.1956521739130435, + "maximum_similarity" : 0.21428571428571427, + "matched_token_number" : 36 + }, + "00186_00004-00203_00002" : { + "minimal_similarity" : 0.2620689655172414, + "maximum_similarity" : 0.2638888888888889, + "matched_token_number" : 38 + }, + "00095_00003-00193_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00120_00001-00142_00001" : { + "minimal_similarity" : 0.9477124183006536, + "maximum_similarity" : 1.0, + "matched_token_number" : 145 + }, + "00147_00001-00194_00001" : { + "minimal_similarity" : 0.1, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00136_00002-00145_00001" : { + "minimal_similarity" : 0.0867579908675799, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00120_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00077_00001-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00134_00001-00184_00002" : { + "minimal_similarity" : 0.23076923076923078, + "maximum_similarity" : 0.2872340425531915, + "matched_token_number" : 27 + }, + "00194_00001-00202_00003" : { + "minimal_similarity" : 0.14666666666666667, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00194_00001-00202_00002" : { + "minimal_similarity" : 0.14666666666666667, + "maximum_similarity" : 0.15602836879432624, + "matched_token_number" : 22 + }, + "00005_00002-00136_00002" : { + "minimal_similarity" : 0.1050228310502283, + "maximum_similarity" : 0.12169312169312169, + "matched_token_number" : 23 + }, + "00155_00001-00199_00001" : { + "minimal_similarity" : 0.08, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00005_00002-00130_00002" : { + "minimal_similarity" : 0.06349206349206349, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00119_00001-00183_00004" : { + "minimal_similarity" : 0.07333333333333333, + "maximum_similarity" : 0.07482993197278912, + "matched_token_number" : 11 + }, + "00013_00002-00077_00001" : { + "minimal_similarity" : 0.05291005291005291, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00160_00001-00193_00001" : { + "minimal_similarity" : 0.06666666666666667, + "maximum_similarity" : 0.08088235294117647, + "matched_token_number" : 11 + }, + "00141_00002-00178_00002" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00031_00002-00177_00003" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00155_00001-00195_00001" : { + "minimal_similarity" : 0.23529411764705882, + "maximum_similarity" : 0.288, + "matched_token_number" : 36 + }, + "00195_00001-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00136_00002-00201_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00133_00001-00184_00003" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00155_00001-00195_00002" : { + "minimal_similarity" : 0.23529411764705882, + "maximum_similarity" : 0.288, + "matched_token_number" : 36 + }, + "00133_00001-00184_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00177_00003-00186_00004" : { + "minimal_similarity" : 0.16666666666666666, + "maximum_similarity" : 0.19444444444444445, + "matched_token_number" : 28 + }, + "00000_00002-00195_00002" : { + "minimal_similarity" : 0.12418300653594772, + "maximum_similarity" : 0.13194444444444445, + "matched_token_number" : 19 + }, + "00000_00002-00198_00001" : { + "minimal_similarity" : 0.10101010101010101, + "maximum_similarity" : 0.1388888888888889, + "matched_token_number" : 20 + }, + "00000_00002-00195_00001" : { + "minimal_similarity" : 0.12418300653594772, + "maximum_similarity" : 0.13194444444444445, + "matched_token_number" : 19 + }, + "00120_00001-00141_00002" : { + "minimal_similarity" : 0.31333333333333335, + "maximum_similarity" : 0.32413793103448274, + "matched_token_number" : 47 + }, + "00186_00004-00202_00003" : { + "minimal_similarity" : 0.3194444444444444, + "maximum_similarity" : 0.3262411347517731, + "matched_token_number" : 46 + }, + "00177_00003-00186_00002" : { + "minimal_similarity" : 0.1534090909090909, + "maximum_similarity" : 0.16071428571428573, + "matched_token_number" : 27 + }, + "00186_00004-00202_00002" : { + "minimal_similarity" : 0.2986111111111111, + "maximum_similarity" : 0.3049645390070922, + "matched_token_number" : 43 + }, + "00121_00001-00141_00002" : { + "minimal_similarity" : 0.27461139896373055, + "maximum_similarity" : 0.35333333333333333, + "matched_token_number" : 53 + }, + "00095_00003-00195_00002" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.0784313725490196, + "matched_token_number" : 12 + }, + "00095_00003-00195_00001" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.0784313725490196, + "matched_token_number" : 12 + }, + "00120_00001-00177_00003" : { + "minimal_similarity" : 0.21428571428571427, + "maximum_similarity" : 0.2482758620689655, + "matched_token_number" : 36 + }, + "00155_00001-00198_00001" : { + "minimal_similarity" : 0.14646464646464646, + "maximum_similarity" : 0.232, + "matched_token_number" : 29 + }, + "00005_00002-00134_00001" : { + "minimal_similarity" : 0.047619047619047616, + "maximum_similarity" : 0.07692307692307693, + "matched_token_number" : 9 + }, + "00195_00001-00203_00002" : { + "minimal_similarity" : 0.1437908496732026, + "maximum_similarity" : 0.15172413793103448, + "matched_token_number" : 22 + }, + "00077_00001-00140_00001" : { + "minimal_similarity" : 0.06349206349206349, + "maximum_similarity" : 0.09022556390977443, + "matched_token_number" : 12 + }, + "00137_00002-00201_00001" : { + "minimal_similarity" : 0.05357142857142857, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00092_00001-00145_00001" : { + "minimal_similarity" : 0.08928571428571429, + "maximum_similarity" : 0.10416666666666667, + "matched_token_number" : 15 + }, + "00136_00002-00140_00001" : { + "minimal_similarity" : 0.0502283105022831, + "maximum_similarity" : 0.08270676691729323, + "matched_token_number" : 11 + }, + "00095_00003-00198_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00184_00002-00197_00001" : { + "minimal_similarity" : 0.10606060606060606, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00156_00003-00178_00002" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00005_00002-00131_00005" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 189 + }, + "00000_00005-00160_00001" : { + "minimal_similarity" : 0.06711409395973154, + "maximum_similarity" : 0.07352941176470588, + "matched_token_number" : 10 + }, + "00140_00001-00186_00002" : { + "minimal_similarity" : 0.2159090909090909, + "maximum_similarity" : 0.2857142857142857, + "matched_token_number" : 38 + }, + "00121_00001-00202_00003" : { + "minimal_similarity" : 0.16062176165803108, + "maximum_similarity" : 0.2198581560283688, + "matched_token_number" : 31 + }, + "00178_00002-00199_00001" : { + "minimal_similarity" : 0.05952380952380952, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 10 + }, + "00130_00002-00138_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00121_00001-00202_00002" : { + "minimal_similarity" : 0.16062176165803108, + "maximum_similarity" : 0.2198581560283688, + "matched_token_number" : 31 + }, + "00140_00001-00186_00004" : { + "minimal_similarity" : 0.3472222222222222, + "maximum_similarity" : 0.37593984962406013, + "matched_token_number" : 50 + }, + "00177_00003-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00092_00001-00203_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00140_00001-00183_00004" : { + "minimal_similarity" : 0.09523809523809523, + "maximum_similarity" : 0.10526315789473684, + "matched_token_number" : 14 + }, + "00194_00001-00200_00002" : { + "minimal_similarity" : 0.058823529411764705, + "maximum_similarity" : 0.06666666666666667, + "matched_token_number" : 10 + }, + "00137_00002-00145_00001" : { + "minimal_similarity" : 1.0, + "maximum_similarity" : 1.0, + "matched_token_number" : 168 + }, + "00005_00002-00133_00001" : { + "minimal_similarity" : 0.10052910052910052, + "maximum_similarity" : 0.1130952380952381, + "matched_token_number" : 19 + }, + "00013_00002-00137_00002" : { + "minimal_similarity" : 0.18452380952380953, + "maximum_similarity" : 0.23308270676691728, + "matched_token_number" : 31 + }, + "00092_00001-00204_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.08333333333333333, + "matched_token_number" : 10 + }, + "00095_00003-00197_00001" : { + "minimal_similarity" : 0.0594059405940594, + "maximum_similarity" : 0.09090909090909091, + "matched_token_number" : 12 + }, + "00195_00001-00202_00003" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00195_00001-00202_00002" : { + "minimal_similarity" : 0.06535947712418301, + "maximum_similarity" : 0.07092198581560284, + "matched_token_number" : 10 + }, + "00136_00002-00141_00002" : { + "minimal_similarity" : 0.1004566210045662, + "maximum_similarity" : 0.14666666666666667, + "matched_token_number" : 22 + }, + "00155_00001-00197_00001" : { + "minimal_similarity" : 0.12878787878787878, + "maximum_similarity" : 0.136, + "matched_token_number" : 17 + }, + "00177_00003-00184_00002" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00134_00001-00186_00002" : { + "minimal_similarity" : 0.1875, + "maximum_similarity" : 0.28205128205128205, + "matched_token_number" : 33 + }, + "00177_00003-00184_00003" : { + "minimal_similarity" : 0.15476190476190477, + "maximum_similarity" : 0.2765957446808511, + "matched_token_number" : 26 + }, + "00000_00002-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00134_00001-00186_00004" : { + "minimal_similarity" : 0.09722222222222222, + "maximum_similarity" : 0.11965811965811966, + "matched_token_number" : 14 + }, + "00156_00002-00187_00001" : { + "minimal_similarity" : 0.05056179775280899, + "maximum_similarity" : 0.06818181818181818, + "matched_token_number" : 9 + }, + "00156_00003-00177_00003" : { + "minimal_similarity" : 0.06179775280898876, + "maximum_similarity" : 0.06547619047619048, + "matched_token_number" : 11 + }, + "00186_00004-00200_00002" : { + "minimal_similarity" : 0.13529411764705881, + "maximum_similarity" : 0.1597222222222222, + "matched_token_number" : 23 + }, + "00121_00001-00201_00001" : { + "minimal_similarity" : 0.046632124352331605, + "maximum_similarity" : 0.06923076923076923, + "matched_token_number" : 9 + }, + "00137_00002-00204_00001" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.19166666666666668, + "matched_token_number" : 23 + }, + "00000_00003-00186_00004" : { + "minimal_similarity" : 0.25, + "maximum_similarity" : 0.2569444444444444, + "matched_token_number" : 37 + }, + "00000_00003-00186_00002" : { + "minimal_similarity" : 0.22727272727272727, + "maximum_similarity" : 0.2702702702702703, + "matched_token_number" : 40 + }, + "00155_00001-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00031_00002-00178_00002" : { + "minimal_similarity" : 0.06547619047619048, + "maximum_similarity" : 0.08870967741935484, + "matched_token_number" : 11 + }, + "00013_00002-00138_00001" : { + "minimal_similarity" : 0.06944444444444445, + "maximum_similarity" : 0.07518796992481203, + "matched_token_number" : 10 + }, + "00136_00002-00200_00002" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00141_00002-00177_00003" : { + "minimal_similarity" : 0.2619047619047619, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00184_00003-00187_00001" : { + "minimal_similarity" : 0.10606060606060606, + "maximum_similarity" : 0.14893617021276595, + "matched_token_number" : 14 + }, + "00014_00001-00113_00002" : { + "minimal_similarity" : 0.2634730538922156, + "maximum_similarity" : 0.29333333333333333, + "matched_token_number" : 44 + }, + "00137_00002-00203_00002" : { + "minimal_similarity" : 0.13690476190476192, + "maximum_similarity" : 0.15862068965517243, + "matched_token_number" : 23 + }, + "00184_00002-00198_00001" : { + "minimal_similarity" : 0.045454545454545456, + "maximum_similarity" : 0.09574468085106383, + "matched_token_number" : 9 + }, + "00202_00003-00203_00002" : { + "minimal_similarity" : 0.33793103448275863, + "maximum_similarity" : 0.3475177304964539, + "matched_token_number" : 49 + }, + "00134_00001-00187_00001" : { + "minimal_similarity" : 0.08333333333333333, + "maximum_similarity" : 0.09401709401709402, + "matched_token_number" : 11 + }, + "00095_00003-00196_00001" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00133_00001-00183_00004" : { + "minimal_similarity" : 0.0, + "maximum_similarity" : 0.0, + "matched_token_number" : 0 + }, + "00000_00002-00197_00001" : { + "minimal_similarity" : 0.20833333333333334, + "maximum_similarity" : 0.22727272727272727, + "matched_token_number" : 30 + }, + "00121_00001-00142_00001" : { + "minimal_similarity" : 0.17098445595854922, + "maximum_similarity" : 0.21568627450980393, + "matched_token_number" : 33 + }, + "00044_00002-00119_00001" : { + "minimal_similarity" : 0.18, + "maximum_similarity" : 0.19852941176470587, + "matched_token_number" : 27 + } + }, + "identifier" : "MTM: 9", + "goldStandard" : { + "matchAverage" : 0.9691523648180836, + "nonMatchAverage" : 0.1309958405783095 + } +} ] \ No newline at end of file diff --git a/endtoend-testing/src/test/resources/results/java/sortAlgo.json b/endtoend-testing/src/test/resources/results/sortAlgo.json similarity index 99% rename from endtoend-testing/src/test/resources/results/java/sortAlgo.json rename to endtoend-testing/src/test/resources/results/sortAlgo.json index 70c8ebbbc..392147633 100644 --- a/endtoend-testing/src/test/resources/results/java/sortAlgo.json +++ b/endtoend-testing/src/test/resources/results/sortAlgo.json @@ -1,7 +1,4 @@ [ { - "options" : { - "minimum_token_match" : 3 - }, "tests" : { "SortAlgo-SortAlgo5" : { "minimal_similarity" : 0.6511627906976745, @@ -448,12 +445,12 @@ "maximum_similarity" : 0.8604651162790697, "matched_token_number" : 37 }, - "SortAlgo3_6-SortAlgo5" : { + "SortAlgo2_5-SortAlgo3_6" : { "minimal_similarity" : 0.5, "maximum_similarity" : 0.6511627906976745, "matched_token_number" : 28 }, - "SortAlgo2_5-SortAlgo3_6" : { + "SortAlgo3_6-SortAlgo5" : { "minimal_similarity" : 0.5, "maximum_similarity" : 0.6511627906976745, "matched_token_number" : 28 @@ -563,12 +560,12 @@ "maximum_similarity" : 0.627906976744186, "matched_token_number" : 27 }, - "SortAlgo2_5-SortAlgo7" : { + "SortAlgo1_5-SortAlgo7" : { "minimal_similarity" : 0.375, "maximum_similarity" : 0.4883720930232558, "matched_token_number" : 21 }, - "SortAlgo1_5-SortAlgo7" : { + "SortAlgo2_5-SortAlgo7" : { "minimal_similarity" : 0.375, "maximum_similarity" : 0.4883720930232558, "matched_token_number" : 21 @@ -858,11 +855,10 @@ "maximum_similarity" : 0.9069767441860465, "matched_token_number" : 39 } - } -}, { - "options" : { - "minimum_token_match" : 9 }, + "identifier" : "MTM: 3", + "goldStandard" : null +}, { "tests" : { "SortAlgo-SortAlgo5" : { "minimal_similarity" : 0.27906976744186046, @@ -1309,12 +1305,12 @@ "maximum_similarity" : 0.6976744186046512, "matched_token_number" : 30 }, - "SortAlgo3_6-SortAlgo5" : { + "SortAlgo2_5-SortAlgo3_6" : { "minimal_similarity" : 0.0, "maximum_similarity" : 0.0, "matched_token_number" : 0 }, - "SortAlgo2_5-SortAlgo3_6" : { + "SortAlgo3_6-SortAlgo5" : { "minimal_similarity" : 0.0, "maximum_similarity" : 0.0, "matched_token_number" : 0 @@ -1424,12 +1420,12 @@ "maximum_similarity" : 0.0, "matched_token_number" : 0 }, - "SortAlgo2_5-SortAlgo7" : { + "SortAlgo1_5-SortAlgo7" : { "minimal_similarity" : 0.19642857142857142, "maximum_similarity" : 0.2558139534883721, "matched_token_number" : 11 }, - "SortAlgo1_5-SortAlgo7" : { + "SortAlgo2_5-SortAlgo7" : { "minimal_similarity" : 0.19642857142857142, "maximum_similarity" : 0.2558139534883721, "matched_token_number" : 11 @@ -1469,12 +1465,12 @@ "maximum_similarity" : 0.20408163265306123, "matched_token_number" : 10 }, - "SortAlgo3_5-SortAlgo7" : { + "SortAlgo1_5-SortAlgo3" : { "minimal_similarity" : 0.0, "maximum_similarity" : 0.0, "matched_token_number" : 0 }, - "SortAlgo1_5-SortAlgo3" : { + "SortAlgo3_5-SortAlgo7" : { "minimal_similarity" : 0.0, "maximum_similarity" : 0.0, "matched_token_number" : 0 @@ -1584,12 +1580,12 @@ "maximum_similarity" : 0.2558139534883721, "matched_token_number" : 11 }, - "SortAlgo3_5-SortAlgo4d1" : { + "SortAlgo2_5-SortAlgo3" : { "minimal_similarity" : 0.0, "maximum_similarity" : 0.0, "matched_token_number" : 0 }, - "SortAlgo2_5-SortAlgo3" : { + "SortAlgo3_5-SortAlgo4d1" : { "minimal_similarity" : 0.0, "maximum_similarity" : 0.0, "matched_token_number" : 0 @@ -1719,5 +1715,7 @@ "maximum_similarity" : 0.5348837209302325, "matched_token_number" : 23 } - } + }, + "identifier" : "MTM: 9", + "goldStandard" : null } ] \ No newline at end of file diff --git a/language-antlr-utils/src/main/java/de/jplag/antlr/AbstractAntlrListener.java b/language-antlr-utils/src/main/java/de/jplag/antlr/AbstractAntlrListener.java index f4144b72e..cf81a3718 100644 --- a/language-antlr-utils/src/main/java/de/jplag/antlr/AbstractAntlrListener.java +++ b/language-antlr-utils/src/main/java/de/jplag/antlr/AbstractAntlrListener.java @@ -149,12 +149,14 @@ protected static T getDescendant(ParserRuleContext queue.add(context); while (!queue.isEmpty()) { ParserRuleContext next = queue.removeFirst(); - for (ParseTree tree : next.children) { - if (tree.getClass() == descendant) { - return descendant.cast(tree); - } - if (tree instanceof ParserRuleContext parserRuleContext) { - queue.addLast(parserRuleContext); + if (next.children != null) { + for (ParseTree tree : next.children) { + if (tree.getClass() == descendant) { + return descendant.cast(tree); + } + if (tree instanceof ParserRuleContext parserRuleContext) { + queue.addLast(parserRuleContext); + } } } } diff --git a/language-antlr-utils/src/main/java/de/jplag/antlr/AbstractVisitor.java b/language-antlr-utils/src/main/java/de/jplag/antlr/AbstractVisitor.java index cad061e19..7946df1d9 100644 --- a/language-antlr-utils/src/main/java/de/jplag/antlr/AbstractVisitor.java +++ b/language-antlr-utils/src/main/java/de/jplag/antlr/AbstractVisitor.java @@ -5,6 +5,8 @@ import java.util.function.*; import org.antlr.v4.runtime.Token; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import de.jplag.TokenType; import de.jplag.semantics.CodeSemantics; @@ -15,6 +17,8 @@ * @param The type of the visited entity. */ public abstract class AbstractVisitor { + private static final Logger logger = LoggerFactory.getLogger(AbstractVisitor.class); + private final Predicate condition; private final List>> entryHandlers; private TokenType entryTokenType; @@ -85,7 +89,7 @@ public AbstractVisitor withSemantics(Function semanticsSupp * @return Self */ public AbstractVisitor withSemantics(Supplier semanticsSupplier) { - this.entrySemantics = ignore -> semanticsSupplier.get(); + withSemantics(ignore -> semanticsSupplier.get()); return this; } @@ -110,7 +114,10 @@ boolean matches(T entity) { * Enter a given entity, injecting the needed dependencies. */ void enter(HandlerData data) { - addToken(data, entryTokenType, entrySemantics, this::extractEnterToken); + if (entryTokenType == null && entrySemantics != null) { + logger.warn("Received semantics, but no token type, so no token was generated and the semantics discarded"); + } + addToken(data, entryTokenType, entrySemantics, this::extractEnterToken); // addToken takes null token types entryHandlers.forEach(handler -> handler.accept(data)); } diff --git a/language-antlr-utils/src/main/java/de/jplag/antlr/ContextVisitor.java b/language-antlr-utils/src/main/java/de/jplag/antlr/ContextVisitor.java index 92dd4ae79..0d3aabe3a 100644 --- a/language-antlr-utils/src/main/java/de/jplag/antlr/ContextVisitor.java +++ b/language-antlr-utils/src/main/java/de/jplag/antlr/ContextVisitor.java @@ -17,7 +17,7 @@ */ public class ContextVisitor extends AbstractVisitor { private final List>> exitHandlers; - private TokenType exitToken; + private TokenType exitTokenType; private Function exitSemantics; ContextVisitor(Predicate condition) { @@ -51,7 +51,7 @@ public AbstractVisitor onExit(Consumer handler) { * @return Self */ public ContextVisitor mapExit(TokenType tokenType) { - exitToken = tokenType; + exitTokenType = tokenType; return this; } @@ -89,8 +89,7 @@ public ContextVisitor withSemantics(Function semantics) { @Override public ContextVisitor withSemantics(Supplier semantics) { - super.withSemantics(semantics); - this.exitSemantics = ignore -> semantics.get(); + withSemantics(ignore -> semantics.get()); return this; } @@ -129,7 +128,7 @@ public ContextVisitor addClassScope() { * Exit a given entity, injecting the needed dependencies. */ void exit(HandlerData data) { - addToken(data, exitToken, exitSemantics, ParserRuleContext::getStop); + addToken(data, exitTokenType, exitSemantics, ParserRuleContext::getStop); exitHandlers.forEach(handler -> handler.accept(data)); } diff --git a/language-antlr-utils/src/main/java/de/jplag/antlr/TokenCollector.java b/language-antlr-utils/src/main/java/de/jplag/antlr/TokenCollector.java index 7a284d015..150088a92 100644 --- a/language-antlr-utils/src/main/java/de/jplag/antlr/TokenCollector.java +++ b/language-antlr-utils/src/main/java/de/jplag/antlr/TokenCollector.java @@ -5,7 +5,9 @@ import java.util.Collections; import java.util.List; import java.util.function.Function; -import java.util.logging.Logger; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import de.jplag.Token; import de.jplag.TokenType; @@ -16,7 +18,8 @@ * Collects the tokens during parsing. */ public class TokenCollector { - private static final Logger logger = Logger.getLogger(TokenCollector.class.getName()); + private static final Logger logger = LoggerFactory.getLogger(TokenCollector.class); + private final List collected; private final boolean extractsSemantics; private File file; @@ -39,9 +42,6 @@ List getTokens() { void addToken(TokenType jplagType, Function semanticsSupplier, T entity, Function extractToken, VariableRegistry variableRegistry) { if (jplagType == null) { - if (semanticsSupplier != null) { - logger.warning("Received semantics, but no token type, so no token was generated and the semantics discarded"); - } return; } org.antlr.v4.runtime.Token antlrToken = extractToken.apply(entity); @@ -58,7 +58,7 @@ void addToken(TokenType jplagType, Function semanticsSuppl variableRegistry.updateSemantics(semantics); } else { if (semanticsSupplier != null) { - logger.warning(() -> String.format("Received semantics for token %s despite not expecting any", jplagType.getDescription())); + logger.warn("Received semantics for token {} despite not expecting any", jplagType.getDescription()); } token = new Token(jplagType, this.file, line, column, length); } diff --git a/language-api/pom.xml b/language-api/pom.xml index 27585b2bf..0c454d9ce 100644 --- a/language-api/pom.xml +++ b/language-api/pom.xml @@ -18,7 +18,7 @@ com.ibm.icu icu4j-charset - 73.2 + 74.1 diff --git a/language-api/src/main/java/de/jplag/semantics/VariableRegistry.java b/language-api/src/main/java/de/jplag/semantics/VariableRegistry.java index dfe8df0bf..82b48f325 100644 --- a/language-api/src/main/java/de/jplag/semantics/VariableRegistry.java +++ b/language-api/src/main/java/de/jplag/semantics/VariableRegistry.java @@ -7,10 +7,15 @@ import java.util.Map; import java.util.Set; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + /** * Registry of variables to assist in generating token semantics. */ public class VariableRegistry { + private static final Logger logger = LoggerFactory.getLogger(VariableRegistry.class); + private CodeSemantics semantics; private Map fileVariables; private Deque> classVariables; // map class name to map of variable names to variables @@ -113,6 +118,7 @@ public void updateSemantics(CodeSemantics semantics) { * @param mutable Whether the variable is mutable. */ public void registerVariable(String variableName, VariableScope scope, boolean mutable) { + logger.debug("Register variable {}", variableName); Variable variable = new Variable(variableName, scope, mutable); switch (scope) { case FILE -> fileVariables.put(variableName, variable); @@ -133,6 +139,7 @@ public void registerVariable(String variableName, VariableScope scope, boolean m * "this" keyword in Java, for example. */ public void registerVariableAccess(String variableName, boolean isClassVariable) { + logger.debug("{} {}", variableName, nextVariableAccessType); if (ignoreNextVariableAccess) { ignoreNextVariableAccess = false; return; @@ -152,9 +159,12 @@ public void registerVariableAccess(String variableName, boolean isClassVariable) */ public void addAllNonLocalVariablesAsReads() { Set nonLocalVariables = new HashSet<>(fileVariables.values()); - nonLocalVariables.addAll(classVariables.getFirst().values()); - for (Variable variable : nonLocalVariables) - semantics.addRead(variable); + if (!classVariables.isEmpty()) { + nonLocalVariables.addAll(classVariables.getFirst().values()); + for (Variable variable : nonLocalVariables) { + semantics.addRead(variable); + } + } } private Variable getVariable(String variableName) { diff --git a/language-testutils/src/test/java/de/jplag/testutils/datacollector/TestSourceIgnoredLinesCollector.java b/language-testutils/src/test/java/de/jplag/testutils/datacollector/TestSourceIgnoredLinesCollector.java index 2fff37ec1..06a67cbb7 100644 --- a/language-testutils/src/test/java/de/jplag/testutils/datacollector/TestSourceIgnoredLinesCollector.java +++ b/language-testutils/src/test/java/de/jplag/testutils/datacollector/TestSourceIgnoredLinesCollector.java @@ -25,6 +25,15 @@ public void ignoreLinesByPrefix(String prefix) { this.ignoreByCondition(line -> line.trim().startsWith(prefix)); } + /** + * Ignores lines that match the given regular expression. Whitespaces to the left and right of the line will be trimmed + * first. + * @param regex The regular expression + */ + public void ignoreLinesByRegex(String regex) { + this.ignoreByCondition(line -> line.trim().matches(regex)); + } + public void ignoreLinesByContains(String content) { this.ignoreByCondition(line -> line.contains(content)); } diff --git a/languages/cpp/pom.xml b/languages/cpp/pom.xml index 54529df6b..734f52d92 100644 --- a/languages/cpp/pom.xml +++ b/languages/cpp/pom.xml @@ -21,7 +21,7 @@ generate-sources - 17 + 21 true de.jplag.cpp src/main/javacc diff --git a/languages/cpp2/src/main/java/de/jplag/cpp2/CPPLanguage.java b/languages/cpp2/src/main/java/de/jplag/cpp2/CPPLanguage.java index eef978912..990ab8c9f 100644 --- a/languages/cpp2/src/main/java/de/jplag/cpp2/CPPLanguage.java +++ b/languages/cpp2/src/main/java/de/jplag/cpp2/CPPLanguage.java @@ -35,4 +35,9 @@ public String getIdentifier() { public int minimumTokenMatch() { return 12; } + + @Override + public boolean tokensHaveSemantics() { + return true; + } } diff --git a/languages/cpp2/src/main/java/de/jplag/cpp2/CPPListener.java b/languages/cpp2/src/main/java/de/jplag/cpp2/CPPListener.java index 6b2a68c49..115ec54de 100644 --- a/languages/cpp2/src/main/java/de/jplag/cpp2/CPPListener.java +++ b/languages/cpp2/src/main/java/de/jplag/cpp2/CPPListener.java @@ -2,9 +2,20 @@ import static de.jplag.cpp2.CPPTokenType.*; +import java.util.function.Function; + +import org.antlr.v4.runtime.ParserRuleContext; +import org.antlr.v4.runtime.tree.TerminalNode; + +import de.jplag.TokenType; import de.jplag.antlr.AbstractAntlrListener; +import de.jplag.antlr.ContextVisitor; import de.jplag.cpp2.grammar.CPP14Parser; import de.jplag.cpp2.grammar.CPP14Parser.*; +import de.jplag.semantics.CodeSemantics; +import de.jplag.semantics.VariableAccessType; +import de.jplag.semantics.VariableRegistry; +import de.jplag.semantics.VariableScope; /** * Extracts tokens from the ANTLR parse tree. Token extraction is built to be similar to the Java language module. In @@ -15,79 +26,126 @@ class CPPListener extends AbstractAntlrListener { CPPListener() { - visit(ClassSpecifierContext.class, rule -> rule.classHead().Union() != null).map(UNION_BEGIN, UNION_END); - visit(ClassSpecifierContext.class, rule -> rule.classHead().classKey() != null && rule.classHead().classKey().Class() != null) - .map(CLASS_BEGIN, CLASS_END); - visit(ClassSpecifierContext.class, rule -> rule.classHead().classKey() != null && rule.classHead().classKey().Struct() != null) - .map(STRUCT_BEGIN, STRUCT_END); - visit(EnumSpecifierContext.class).map(ENUM_BEGIN, ENUM_END); + visit(ClassSpecifierContext.class, rule -> rule.classHead().Union() != null).map(UNION_BEGIN, UNION_END).withSemantics(CodeSemantics::new); + mapClass(ClassKeyContext::Class, CLASS_BEGIN, CLASS_END); + mapClass(ClassKeyContext::Struct, STRUCT_BEGIN, STRUCT_END); // structs are basically just classes + visit(EnumSpecifierContext.class).map(ENUM_BEGIN, ENUM_END).withSemantics(CodeSemantics::createControl); - visit(FunctionDefinitionContext.class).map(FUNCTION_BEGIN, FUNCTION_END); + visit(FunctionDefinitionContext.class).map(FUNCTION_BEGIN, FUNCTION_END).addLocalScope().withSemantics(CodeSemantics::createControl); - visit(IterationStatementContext.class, rule -> rule.Do() != null).map(DO_BEGIN, DO_END); - visit(IterationStatementContext.class, rule -> rule.For() != null).map(FOR_BEGIN, FOR_END); - visit(IterationStatementContext.class, rule -> rule.While() != null && rule.Do() == null).map(WHILE_BEGIN, WHILE_END); + visit(IterationStatementContext.class, rule -> rule.Do() != null).map(DO_BEGIN, DO_END).addLocalScope().withLoopSemantics(); + visit(IterationStatementContext.class, rule -> rule.For() != null).map(FOR_BEGIN, FOR_END).addLocalScope().withLoopSemantics(); + visit(IterationStatementContext.class, rule -> rule.While() != null && rule.Do() == null).map(WHILE_BEGIN, WHILE_END).addLocalScope() + .withLoopSemantics(); - visit(SelectionStatementContext.class, rule -> rule.Switch() != null).map(SWITCH_BEGIN, SWITCH_END); - visit(SelectionStatementContext.class, rule -> rule.If() != null).map(IF_BEGIN, IF_END); - visit(CPP14Parser.Else).map(ELSE); + visit(SelectionStatementContext.class, rule -> rule.Switch() != null).map(SWITCH_BEGIN, SWITCH_END).addLocalScope() + .withSemantics(CodeSemantics::createControl); + visit(SelectionStatementContext.class, rule -> rule.If() != null).map(IF_BEGIN, IF_END).addLocalScope() + .withSemantics(CodeSemantics::createControl); + // possible problem: variable from if visible in else, but in reality is not -- doesn't really matter + visit(CPP14Parser.Else).map(ELSE).withSemantics(CodeSemantics::createControl); - visit(LabeledStatementContext.class, rule -> rule.Case() != null).map(CASE); - visit(LabeledStatementContext.class, rule -> rule.Default() != null).map(DEFAULT); + visit(LabeledStatementContext.class, rule -> rule.Case() != null).map(CASE).withSemantics(CodeSemantics::createControl); + visit(LabeledStatementContext.class, rule -> rule.Default() != null).map(DEFAULT).withSemantics(CodeSemantics::createControl); - visit(TryBlockContext.class).map(TRY); - visit(HandlerContext.class).map(CATCH_BEGIN, CATCH_END); + visit(TryBlockContext.class).map(TRY_BEGIN, TRY_END).addLocalScope().withSemantics(CodeSemantics::createControl); + visit(HandlerContext.class).map(CATCH_BEGIN, CATCH_END).addLocalScope().withSemantics(CodeSemantics::createControl); - visit(JumpStatementContext.class, rule -> rule.Break() != null).map(BREAK); - visit(JumpStatementContext.class, rule -> rule.Continue() != null).map(CONTINUE); - visit(JumpStatementContext.class, rule -> rule.Goto() != null).map(GOTO); - visit(JumpStatementContext.class, rule -> rule.Return() != null).map(RETURN); + visit(JumpStatementContext.class, rule -> rule.Break() != null).map(BREAK).withSemantics(CodeSemantics::createControl); + visit(JumpStatementContext.class, rule -> rule.Continue() != null).map(CONTINUE).withSemantics(CodeSemantics::createControl); + visit(JumpStatementContext.class, rule -> rule.Goto() != null).map(GOTO).withSemantics(CodeSemantics::createControl); + visit(JumpStatementContext.class, rule -> rule.Return() != null).map(RETURN).withSemantics(CodeSemantics::createControl); - visit(ThrowExpressionContext.class).map(THROW); + visit(ThrowExpressionContext.class).map(THROW).withSemantics(CodeSemantics::createControl); - visit(NewExpressionContext.class, rule -> rule.newInitializer() != null).map(NEWCLASS); - visit(NewExpressionContext.class, rule -> rule.newInitializer() == null).map(NEWARRAY); + visit(NewExpressionContext.class, rule -> rule.newInitializer() != null).map(NEWCLASS).withSemantics(CodeSemantics::new); + visit(NewExpressionContext.class, rule -> rule.newInitializer() == null).map(NEWARRAY).withSemantics(CodeSemantics::new); - visit(TemplateDeclarationContext.class).map(GENERIC); + visit(TemplateDeclarationContext.class).map(GENERIC).withSemantics(CodeSemantics::new); - visit(AssignmentOperatorContext.class).map(ASSIGN); - visit(BraceOrEqualInitializerContext.class, rule -> rule.Assign() != null).map(ASSIGN); - visit(UnaryExpressionContext.class, rule -> rule.PlusPlus() != null || rule.MinusMinus() != null).map(ASSIGN); + visit(AssignmentOperatorContext.class).map(ASSIGN).withSemantics(CodeSemantics::new) + .onEnter((rule, varReg) -> varReg.setNextVariableAccessType(VariableAccessType.WRITE)); + visit(UnaryExpressionContext.class, rule -> rule.PlusPlus() != null || rule.MinusMinus() != null).map(ASSIGN) + .withSemantics(CodeSemantics::new).onEnter((rule, varReg) -> varReg.setNextVariableAccessType(VariableAccessType.READ_WRITE)); - visit(StaticAssertDeclarationContext.class).map(STATIC_ASSERT); - visit(EnumeratorDefinitionContext.class).map(VARDEF); - visit(BracedInitListContext.class).map(BRACED_INIT_BEGIN, BRACED_INIT_END); + visit(StaticAssertDeclarationContext.class).map(STATIC_ASSERT).withSemantics(CodeSemantics::createControl); + visit(EnumeratorDefinitionContext.class).map(VARDEF).withSemantics(CodeSemantics::new) + .onEnter((rule, varReg) -> varReg.setNextVariableAccessType(VariableAccessType.WRITE)); + visit(BracedInitListContext.class).map(BRACED_INIT_BEGIN, BRACED_INIT_END).withSemantics(CodeSemantics::new); visit(SimpleTypeSpecifierContext.class, rule -> { if (hasAncestor(rule, MemberdeclarationContext.class, FunctionDefinitionContext.class)) { return true; } - - if (hasAncestor(rule, SimpleDeclarationContext.class, TemplateArgumentContext.class, FunctionDefinitionContext.class)) { - SimpleDeclarationContext parent = getAncestor(rule, SimpleDeclarationContext.class); - NoPointerDeclaratorContext noPointerDecl = getDescendant(parent, NoPointerDeclaratorContext.class); - - return (!noPointerInFunctionCallContext(noPointerDecl)) && !hasAncestor(rule, NewTypeIdContext.class); + SimpleDeclarationContext parent = getAncestor(rule, SimpleDeclarationContext.class, TemplateArgumentContext.class, + FunctionDefinitionContext.class); + if (parent == null) + return false; + NoPointerDeclaratorContext noPointerDecl = getDescendant(parent, NoPointerDeclaratorContext.class); + return !noPointerInFunctionCallContext(noPointerDecl) && !hasAncestor(rule, NewTypeIdContext.class); + }).map(VARDEF).withSemantics(CodeSemantics::new).onEnter((context, variableRegistry) -> { + SimpleDeclarationContext parent = getAncestor(context, SimpleDeclarationContext.class); + if (parent == null) // at this point we know parent exists + throw new IllegalStateException(); + // boolean typeMutable = context.theTypeName() != null; // block is duplicate to member variable register + // possible issue: what if multiple variables are declared in the same line? + variableRegistry.setNextVariableAccessType(VariableAccessType.WRITE); + if (parent.initDeclaratorList() == null) { + return; } + for (InitDeclaratorContext dec : parent.initDeclaratorList().initDeclarator()) { + String name = dec.declarator().pointerDeclarator().noPointerDeclarator().getText(); + VariableScope scope = variableRegistry.inLocalScope() ? VariableScope.LOCAL : VariableScope.FILE; + variableRegistry.registerVariable(name, scope, true); + } + }); - return false; - }).map(VARDEF); - - visit(SimpleDeclarationContext.class, rule -> { + mapApply(visit(SimpleDeclarationContext.class, rule -> { if (!hasAncestor(rule, FunctionBodyContext.class)) { return false; } NoPointerDeclaratorContext noPointerDecl = getDescendant(rule, NoPointerDeclaratorContext.class); return noPointerInFunctionCallContext(noPointerDecl); - }).map(APPLY); - - visit(InitDeclaratorContext.class, rule -> rule.initializer() != null && rule.initializer().LeftParen() != null).map(APPLY); - visit(ParameterDeclarationContext.class).map(VARDEF); - visit(ConditionalExpressionContext.class, rule -> rule.Question() != null).map(QUESTIONMARK); + })); + + mapApply(visit(InitDeclaratorContext.class, rule -> rule.initializer() != null && rule.initializer().LeftParen() != null)); + visit(DeclaratorContext.class, rule -> { + ParserRuleContext parent = rule.getParent(); + BraceOrEqualInitializerContext desc = getDescendant(parent, BraceOrEqualInitializerContext.class); + return (desc != null && desc.Assign() != null && (parent == desc.getParent() || parent == desc.getParent().getParent())); + }).map(ASSIGN).withSemantics(CodeSemantics::new).onEnter((ctx, varReg) -> varReg.setNextVariableAccessType(VariableAccessType.WRITE)); + + visit(ParameterDeclarationContext.class).map(VARDEF).withSemantics(CodeSemantics::new).onEnter((ctx, varReg) -> { + // don't register parameters in function declarations, e.g. bc6h_enc lines 117-120 + if (hasAncestor(ctx, FunctionDefinitionContext.class, SimpleDeclarationContext.class)) { + CPP14Parser.PointerDeclaratorContext pd = ctx.declarator().pointerDeclarator(); + String name = pd.noPointerDeclarator().getText(); + varReg.registerVariable(name, VariableScope.LOCAL, true); + varReg.setNextVariableAccessType(VariableAccessType.WRITE); + } + }); + visit(ConditionalExpressionContext.class, rule -> rule.Question() != null).map(QUESTIONMARK).withSemantics(CodeSemantics::new); + + mapApply(visit(PostfixExpressionContext.class, rule -> rule.LeftParen() != null)); + visit(PostfixExpressionContext.class, rule -> rule.PlusPlus() != null || rule.MinusMinus() != null).map(ASSIGN) + .withSemantics(CodeSemantics::new).onEnter((rule, varReg) -> varReg.setNextVariableAccessType(VariableAccessType.READ_WRITE)); + + visit(UnqualifiedIdContext.class).onEnter((ctx, varReg) -> { + ParserRuleContext parentCtx = ctx.getParent().getParent(); + if (!parentCtx.getParent().getParent().getText().contains("(")) { + boolean isClassVariable = parentCtx.getClass() == PostfixExpressionContext.class // after dot + && ((PostfixExpressionContext) parentCtx).postfixExpression().getText().equals("this"); + varReg.registerVariableAccess(ctx.getText(), isClassVariable); + } + }); + } - visit(PostfixExpressionContext.class, rule -> rule.LeftParen() != null).map(APPLY); - visit(PostfixExpressionContext.class, rule -> rule.PlusPlus() != null || rule.MinusMinus() != null).map(ASSIGN); + private void mapApply(ContextVisitor visitor) { + visitor.onExit((ctx, varReg) -> varReg.setMutableWrite(false)).onEnter((ctx, varReg) -> { + varReg.addAllNonLocalVariablesAsReads(); + varReg.setMutableWrite(true); + }).map(APPLY).withControlSemantics(); } /** @@ -96,4 +154,28 @@ class CPPListener extends AbstractAntlrListener { private static boolean noPointerInFunctionCallContext(NoPointerDeclaratorContext context) { return context != null && (context.parametersAndQualifiers() != null || context.LeftParen() != null); } + + private void mapClass(Function getTerminal, TokenType beginTokenType, TokenType endTokenType) { + visit(ClassSpecifierContext.class, rule -> { + ClassKeyContext classKey = rule.classHead().classKey(); + return classKey != null && getTerminal.apply(classKey) != null; + }).map(beginTokenType, endTokenType).addClassScope().withSemantics(CodeSemantics::createControl).onEnter(this::registerClassVariables); + } + + private void registerClassVariables(ClassSpecifierContext context, VariableRegistry variableRegistry) { + MemberSpecificationContext members = context.memberSpecification(); + if (members != null) { // is null if class has no members + for (MemberdeclarationContext member : members.memberdeclaration()) { + if (member.memberDeclaratorList() != null) { + for (MemberDeclaratorContext memberDec : member.memberDeclaratorList().memberDeclarator()) { + DeclaratorContext dec = memberDec.declarator(); + if (dec != null) { // is null in some weird case, see bc6h_enc line 1100 + String name = dec.pointerDeclarator().noPointerDeclarator().getText(); + variableRegistry.registerVariable(name, VariableScope.CLASS, true); + } + } + } + } + } + } } diff --git a/languages/cpp2/src/main/java/de/jplag/cpp2/CPPParserAdapter.java b/languages/cpp2/src/main/java/de/jplag/cpp2/CPPParserAdapter.java index c876023ee..925406360 100644 --- a/languages/cpp2/src/main/java/de/jplag/cpp2/CPPParserAdapter.java +++ b/languages/cpp2/src/main/java/de/jplag/cpp2/CPPParserAdapter.java @@ -17,6 +17,10 @@ public class CPPParserAdapter extends AbstractAntlrParserAdapter { private static final CPPListener listener = new CPPListener(); + public CPPParserAdapter() { + super(true); + } + @Override protected Lexer createLexer(CharStream input) { return new CPP14Lexer(input); diff --git a/languages/cpp2/src/main/java/de/jplag/cpp2/CPPTokenType.java b/languages/cpp2/src/main/java/de/jplag/cpp2/CPPTokenType.java index 0a072d0ac..a87a43630 100644 --- a/languages/cpp2/src/main/java/de/jplag/cpp2/CPPTokenType.java +++ b/languages/cpp2/src/main/java/de/jplag/cpp2/CPPTokenType.java @@ -25,7 +25,8 @@ public enum CPPTokenType implements TokenType { SWITCH_BEGIN("SWITCH{"), SWITCH_END("}SWITCH"), CASE("CASE"), - TRY("TRY"), + TRY_BEGIN("TRY{"), + TRY_END("}TRY"), CATCH_BEGIN("CATCH{"), CATCH_END("}CATCH"), IF_BEGIN("IF{"), diff --git a/languages/csharp/pom.xml b/languages/csharp/pom.xml index 9bf5f4b66..12213357f 100644 --- a/languages/csharp/pom.xml +++ b/languages/csharp/pom.xml @@ -13,6 +13,11 @@ org.antlr antlr4-runtime + + de.jplag + language-antlr-utils + ${revision} + diff --git a/languages/csharp/src/main/java/de/jplag/csharp/CSharpLanguage.java b/languages/csharp/src/main/java/de/jplag/csharp/CSharpLanguage.java index 401727bf6..aeeb53728 100644 --- a/languages/csharp/src/main/java/de/jplag/csharp/CSharpLanguage.java +++ b/languages/csharp/src/main/java/de/jplag/csharp/CSharpLanguage.java @@ -1,29 +1,21 @@ package de.jplag.csharp; -import java.io.File; -import java.util.List; -import java.util.Set; - import org.kohsuke.MetaInfServices; -import de.jplag.ParsingException; -import de.jplag.Token; +import de.jplag.antlr.AbstractAntlrLanguage; /** * C# language with full support of C# 6 features and below. - * @author Timur Saglam */ @MetaInfServices(de.jplag.Language.class) -public class CSharpLanguage implements de.jplag.Language { +public class CSharpLanguage extends AbstractAntlrLanguage { private static final String NAME = "C# 6 Parser"; private static final String IDENTIFIER = "csharp"; private static final String[] FILE_ENDINGS = new String[] {".cs", ".CS"}; private static final int DEFAULT_MIN_TOKEN_MATCH = 8; - private final CSharpParserAdapter parser; - public CSharpLanguage() { - parser = new CSharpParserAdapter(); + super(new CSharpParserAdapter()); } @Override @@ -45,9 +37,4 @@ public String getIdentifier() { public int minimumTokenMatch() { return DEFAULT_MIN_TOKEN_MATCH; } - - @Override - public List parse(Set files) throws ParsingException { - return parser.parse(files); - } } diff --git a/languages/csharp/src/main/java/de/jplag/csharp/CSharpListener.java b/languages/csharp/src/main/java/de/jplag/csharp/CSharpListener.java index 65d04d5b7..6cc568505 100644 --- a/languages/csharp/src/main/java/de/jplag/csharp/CSharpListener.java +++ b/languages/csharp/src/main/java/de/jplag/csharp/CSharpListener.java @@ -19,7 +19,6 @@ import static de.jplag.csharp.CSharpTokenType.CONTINUE; import static de.jplag.csharp.CSharpTokenType.DELEGATE; import static de.jplag.csharp.CSharpTokenType.DESTRUCTOR; -import static de.jplag.csharp.CSharpTokenType.DO; import static de.jplag.csharp.CSharpTokenType.ENUM; import static de.jplag.csharp.CSharpTokenType.ENUMERAL; import static de.jplag.csharp.CSharpTokenType.ENUM_BEGIN; @@ -28,8 +27,6 @@ import static de.jplag.csharp.CSharpTokenType.FIELD; import static de.jplag.csharp.CSharpTokenType.FINALLY; import static de.jplag.csharp.CSharpTokenType.FIXED; -import static de.jplag.csharp.CSharpTokenType.FOR; -import static de.jplag.csharp.CSharpTokenType.FOREACH; import static de.jplag.csharp.CSharpTokenType.GOTO; import static de.jplag.csharp.CSharpTokenType.IF; import static de.jplag.csharp.CSharpTokenType.IF_BEGIN; @@ -41,9 +38,12 @@ import static de.jplag.csharp.CSharpTokenType.INVOCATION; import static de.jplag.csharp.CSharpTokenType.LOCAL_VARIABLE; import static de.jplag.csharp.CSharpTokenType.LOCK; +import static de.jplag.csharp.CSharpTokenType.LOOP_BEGIN; +import static de.jplag.csharp.CSharpTokenType.LOOP_END; import static de.jplag.csharp.CSharpTokenType.METHOD; import static de.jplag.csharp.CSharpTokenType.METHOD_BEGIN; import static de.jplag.csharp.CSharpTokenType.METHOD_END; +import static de.jplag.csharp.CSharpTokenType.NAMESPACE; import static de.jplag.csharp.CSharpTokenType.NAMESPACE_BEGIN; import static de.jplag.csharp.CSharpTokenType.NAMESPACE_END; import static de.jplag.csharp.CSharpTokenType.OBJECT_CREATION; @@ -59,25 +59,39 @@ import static de.jplag.csharp.CSharpTokenType.TRY; import static de.jplag.csharp.CSharpTokenType.UNCHECKED; import static de.jplag.csharp.CSharpTokenType.UNSAFE; -import static de.jplag.csharp.CSharpTokenType.USING; import static de.jplag.csharp.CSharpTokenType.USING_DIRECTIVE; -import static de.jplag.csharp.CSharpTokenType.WHILE; - -import org.antlr.v4.runtime.Token; - +import static de.jplag.csharp.grammar.CSharpParser.ELSE; +import static de.jplag.csharp.grammar.CSharpParser.OP_ADD_ASSIGNMENT; +import static de.jplag.csharp.grammar.CSharpParser.OP_AND_ASSIGNMENT; +import static de.jplag.csharp.grammar.CSharpParser.OP_COALESCING_ASSIGNMENT; +import static de.jplag.csharp.grammar.CSharpParser.OP_DEC; +import static de.jplag.csharp.grammar.CSharpParser.OP_DIV_ASSIGNMENT; +import static de.jplag.csharp.grammar.CSharpParser.OP_INC; +import static de.jplag.csharp.grammar.CSharpParser.OP_MOD_ASSIGNMENT; +import static de.jplag.csharp.grammar.CSharpParser.OP_MULT_ASSIGNMENT; +import static de.jplag.csharp.grammar.CSharpParser.OP_OR_ASSIGNMENT; +import static de.jplag.csharp.grammar.CSharpParser.OP_SUB_ASSIGNMENT; +import static de.jplag.csharp.grammar.CSharpParser.OP_XOR_ASSIGNMENT; + +import org.antlr.v4.runtime.ParserRuleContext; + +import de.jplag.antlr.AbstractAntlrListener; import de.jplag.csharp.grammar.CSharpParser.Accessor_bodyContext; import de.jplag.csharp.grammar.CSharpParser.Accessor_declarationsContext; import de.jplag.csharp.grammar.CSharpParser.Array_initializerContext; import de.jplag.csharp.grammar.CSharpParser.Assignment_operatorContext; import de.jplag.csharp.grammar.CSharpParser.AttributeContext; +import de.jplag.csharp.grammar.CSharpParser.BodyContext; import de.jplag.csharp.grammar.CSharpParser.BreakStatementContext; -import de.jplag.csharp.grammar.CSharpParser.Catch_clausesContext; +import de.jplag.csharp.grammar.CSharpParser.CheckedExpressionContext; import de.jplag.csharp.grammar.CSharpParser.CheckedStatementContext; import de.jplag.csharp.grammar.CSharpParser.Class_bodyContext; import de.jplag.csharp.grammar.CSharpParser.Class_definitionContext; +import de.jplag.csharp.grammar.CSharpParser.Common_member_declarationContext; import de.jplag.csharp.grammar.CSharpParser.Constant_declarationContext; import de.jplag.csharp.grammar.CSharpParser.Constructor_declarationContext; import de.jplag.csharp.grammar.CSharpParser.ContinueStatementContext; +import de.jplag.csharp.grammar.CSharpParser.Conversion_operator_declaratorContext; import de.jplag.csharp.grammar.CSharpParser.Delegate_definitionContext; import de.jplag.csharp.grammar.CSharpParser.Destructor_definitionContext; import de.jplag.csharp.grammar.CSharpParser.DoStatementContext; @@ -94,425 +108,160 @@ import de.jplag.csharp.grammar.CSharpParser.IfStatementContext; import de.jplag.csharp.grammar.CSharpParser.If_bodyContext; import de.jplag.csharp.grammar.CSharpParser.Indexer_declarationContext; -import de.jplag.csharp.grammar.CSharpParser.Interface_bodyContext; import de.jplag.csharp.grammar.CSharpParser.Interface_definitionContext; +import de.jplag.csharp.grammar.CSharpParser.Local_constant_declarationContext; import de.jplag.csharp.grammar.CSharpParser.Local_variable_declarationContext; import de.jplag.csharp.grammar.CSharpParser.LockStatementContext; import de.jplag.csharp.grammar.CSharpParser.Method_bodyContext; import de.jplag.csharp.grammar.CSharpParser.Method_declarationContext; import de.jplag.csharp.grammar.CSharpParser.Method_invocationContext; import de.jplag.csharp.grammar.CSharpParser.Namespace_bodyContext; +import de.jplag.csharp.grammar.CSharpParser.Namespace_declarationContext; +import de.jplag.csharp.grammar.CSharpParser.Namespace_or_type_nameContext; import de.jplag.csharp.grammar.CSharpParser.Object_creation_expressionContext; import de.jplag.csharp.grammar.CSharpParser.Operator_declarationContext; import de.jplag.csharp.grammar.CSharpParser.Property_declarationContext; import de.jplag.csharp.grammar.CSharpParser.ReturnStatementContext; +import de.jplag.csharp.grammar.CSharpParser.Shift_expressionContext; +import de.jplag.csharp.grammar.CSharpParser.Specific_catch_clauseContext; import de.jplag.csharp.grammar.CSharpParser.Struct_bodyContext; import de.jplag.csharp.grammar.CSharpParser.Struct_definitionContext; import de.jplag.csharp.grammar.CSharpParser.SwitchStatementContext; import de.jplag.csharp.grammar.CSharpParser.Switch_sectionContext; import de.jplag.csharp.grammar.CSharpParser.ThrowStatementContext; import de.jplag.csharp.grammar.CSharpParser.TryStatementContext; +import de.jplag.csharp.grammar.CSharpParser.Type_argument_listContext; import de.jplag.csharp.grammar.CSharpParser.UncheckedExpressionContext; +import de.jplag.csharp.grammar.CSharpParser.UncheckedStatementContext; import de.jplag.csharp.grammar.CSharpParser.UnsafeStatementContext; -import de.jplag.csharp.grammar.CSharpParser.UsingStatementContext; -import de.jplag.csharp.grammar.CSharpParser.Using_directivesContext; +import de.jplag.csharp.grammar.CSharpParser.UsingAliasDirectiveContext; +import de.jplag.csharp.grammar.CSharpParser.UsingNamespaceDirectiveContext; +import de.jplag.csharp.grammar.CSharpParser.UsingStaticDirectiveContext; import de.jplag.csharp.grammar.CSharpParser.WhileStatementContext; -import de.jplag.csharp.grammar.CSharpParserBaseListener; /** - * Listener class for visiting the C# ANTLR parse tree. Transforms selected ANTLR token into JPlag tokens. - * @author Timur Saglam + * Extracts tokens for the {@link CSharpLanguage} */ -public class CSharpListener extends CSharpParserBaseListener { - - private final CSharpParserAdapter parserAdapter; - - /** - * Creates the listener. - * @param parserAdapter is the JPlag parser adapter which receives the transformed tokens. - */ - public CSharpListener(CSharpParserAdapter parserAdapter) { - this.parserAdapter = parserAdapter; - } - - /** - * Transforms an ANTLR Token into a JPlag token and transfers it to the token adapter. - * @param targetType is the type of the JPlag token to be created. - * @param token is the ANTLR token. - */ - private void transformToken(CSharpTokenType targetType, Token token) { - parserAdapter.addToken(targetType, token.getLine(), token.getCharPositionInLine() + 1, token.getText().length()); - } - - @Override - public void enterMethod_invocation(Method_invocationContext context) { - transformToken(INVOCATION, context.getStart()); - super.enterMethod_invocation(context); - } - - @Override - public void enterObject_creation_expression(Object_creation_expressionContext context) { - transformToken(OBJECT_CREATION, context.getStart()); - super.enterObject_creation_expression(context); - } - - @Override - public void enterArray_initializer(Array_initializerContext context) { - transformToken(ARRAY_CREATION, context.getStart()); - super.enterArray_initializer(context); - } - - @Override - public void enterAssignment_operator(Assignment_operatorContext context) { - transformToken(ASSIGNMENT, context.getStart()); - super.enterAssignment_operator(context); - } - - @Override - public void enterIfStatement(IfStatementContext context) { - transformToken(IF, context.getStart()); - super.enterIfStatement(context); - } - - @Override - public void enterIf_body(If_bodyContext context) { - transformToken(IF_BEGIN, context.getStart()); - super.enterIf_body(context); - } - - @Override - public void exitIf_body(If_bodyContext context) { - transformToken(IF_END, context.getStop()); - super.exitIf_body(context); - } - - @Override - public void enterSwitch_section(Switch_sectionContext context) { - transformToken(SWITCH_BEGIN, context.getStart()); - super.enterSwitch_section(context); - } - - @Override - public void exitSwitch_section(Switch_sectionContext context) { - transformToken(SWITCH_END, context.getStop()); - super.exitSwitch_section(context); - } - - @Override - public void enterSwitchStatement(SwitchStatementContext context) { - transformToken(CASE, context.getStart()); - super.enterSwitchStatement(context); - } - - @Override - public void enterDoStatement(DoStatementContext context) { - transformToken(DO, context.getStart()); - super.enterDoStatement(context); - } - - @Override - public void enterWhileStatement(WhileStatementContext context) { - transformToken(WHILE, context.getStart()); - super.enterWhileStatement(context); - } - - @Override - public void enterForStatement(ForStatementContext context) { - transformToken(FOR, context.getStart()); - super.enterForStatement(context); - } - - @Override - public void enterForeachStatement(ForeachStatementContext context) { - transformToken(FOREACH, context.getStart()); - super.enterForeachStatement(context); - } - - @Override - public void enterBreakStatement(BreakStatementContext context) { - transformToken(BREAK, context.getStart()); - super.enterBreakStatement(context); - } - - @Override - public void enterContinueStatement(ContinueStatementContext context) { - transformToken(CONTINUE, context.getStart()); - super.enterContinueStatement(context); - } - - @Override - public void enterGotoStatement(GotoStatementContext context) { - transformToken(GOTO, context.getStart()); - super.enterGotoStatement(context); - } - - @Override - public void enterReturnStatement(ReturnStatementContext context) { - transformToken(RETURN, context.getStart()); - super.enterReturnStatement(context); - } - - @Override - public void enterThrowStatement(ThrowStatementContext context) { - transformToken(THROW, context.getStart()); - super.enterThrowStatement(context); - } - - @Override - public void enterCheckedStatement(CheckedStatementContext context) { - transformToken(CHECKED, context.getStart()); - super.enterCheckedStatement(context); - } - - @Override - public void enterUncheckedExpression(UncheckedExpressionContext context) { - transformToken(UNCHECKED, context.getStart()); - super.enterUncheckedExpression(context); - } - - @Override - public void enterLockStatement(LockStatementContext context) { - transformToken(LOCK, context.getStart()); - super.enterLockStatement(context); - } - - @Override - public void enterUsingStatement(UsingStatementContext context) { - transformToken(USING, context.getStart()); - super.enterUsingStatement(context); - } - - @Override - public void enterTryStatement(TryStatementContext context) { - transformToken(TRY, context.getStart()); - super.enterTryStatement(context); - } - - @Override - public void enterCatch_clauses(Catch_clausesContext context) { - transformToken(CATCH, context.getStart()); - super.enterCatch_clauses(context); - } - - @Override - public void enterFinally_clause(Finally_clauseContext context) { - transformToken(FINALLY, context.getStart()); - super.enterFinally_clause(context); - } - - @Override - public void enterNamespace_body(Namespace_bodyContext context) { - transformToken(NAMESPACE_BEGIN, context.getStart()); - super.enterNamespace_body(context); - } - - @Override - public void exitNamespace_body(Namespace_bodyContext context) { - transformToken(NAMESPACE_END, context.getStop()); - super.exitNamespace_body(context); - } - - @Override - public void enterUsing_directives(Using_directivesContext context) { - transformToken(USING_DIRECTIVE, context.getStart()); - super.enterUsing_directives(context); - } - - @Override - public void enterClass_definition(Class_definitionContext context) { - transformToken(CLASS, context.getStart()); - super.enterClass_definition(context); - } - - @Override - public void enterClass_body(Class_bodyContext context) { - transformToken(CLASS_BEGIN, context.getStart()); - super.enterClass_body(context); - } - - @Override - public void exitClass_body(Class_bodyContext context) { - transformToken(CLASS_END, context.getStop()); - super.exitClass_body(context); - } - - @Override - public void enterMethod_declaration(Method_declarationContext context) { - transformToken(METHOD, context.getStart()); - super.enterMethod_declaration(context); - } - - @Override - public void enterMethod_body(Method_bodyContext context) { - transformToken(METHOD_BEGIN, context.getStart()); - super.enterMethod_body(context); - } - - @Override - public void exitMethod_body(Method_bodyContext context) { - transformToken(METHOD_END, context.getStop()); - super.exitMethod_body(context); - } - - @Override - public void enterProperty_declaration(Property_declarationContext context) { - transformToken(PROPERTY, context.getStart()); - super.enterProperty_declaration(context); - } - - @Override - public void enterEvent_declaration(Event_declarationContext context) { - transformToken(EVENT, context.getStart()); - super.enterEvent_declaration(context); - } - - @Override - public void enterIndexer_declaration(Indexer_declarationContext context) { - transformToken(INDEXER, context.getStart()); - super.enterIndexer_declaration(context); - } - - @Override - public void enterOperator_declaration(Operator_declarationContext context) { - transformToken(OPERATOR, context.getStart()); - super.enterOperator_declaration(context); - } - - @Override - public void enterConstructor_declaration(Constructor_declarationContext context) { - transformToken(CONSTRUCTOR, context.getStart()); - super.enterConstructor_declaration(context); - } - - @Override - public void enterDestructor_definition(Destructor_definitionContext context) { - transformToken(DESTRUCTOR, context.getStart()); - super.enterDestructor_definition(context); - } - - @Override - public void enterStruct_definition(Struct_definitionContext context) { - transformToken(STRUCT, context.getStart()); - super.enterStruct_definition(context); - } - - @Override - public void enterStruct_body(Struct_bodyContext context) { - transformToken(STRUCT_BEGIN, context.getStart()); - super.enterStruct_body(context); - } - - @Override - public void exitStruct_body(Struct_bodyContext context) { - transformToken(STRUCT_END, context.getStop()); - super.exitStruct_body(context); - } - - @Override - public void enterInterface_definition(Interface_definitionContext context) { - transformToken(INTERFACE, context.getStart()); - super.enterInterface_definition(context); - } - - @Override - public void enterInterface_body(Interface_bodyContext context) { - transformToken(INTERFACE_BEGIN, context.getStart()); - super.enterInterface_body(context); - } - - @Override - public void exitInterface_body(Interface_bodyContext context) { - transformToken(INTERFACE_END, context.getStart()); - super.exitInterface_body(context); - } - - @Override - public void enterEnum_definition(Enum_definitionContext context) { - transformToken(ENUM, context.getStart()); - super.enterEnum_definition(context); - } - - @Override - public void enterEnum_body(Enum_bodyContext context) { - transformToken(ENUM_BEGIN, context.getStart()); - super.enterEnum_body(context); - } - - @Override - public void exitEnum_body(Enum_bodyContext context) { - transformToken(ENUM_END, context.getStop()); - super.exitEnum_body(context); - } - - @Override - public void enterEnum_member_declaration(Enum_member_declarationContext context) { - transformToken(ENUMERAL, context.getStart()); - super.enterEnum_member_declaration(context); - } - - @Override - public void enterAttribute(AttributeContext context) { - transformToken(ATTRIBUTE, context.getStart()); - super.enterAttribute(context); - } - - @Override - public void enterDelegate_definition(Delegate_definitionContext context) { - transformToken(DELEGATE, context.getStart()); - super.enterDelegate_definition(context); - } - - @Override - public void enterUnsafeStatement(UnsafeStatementContext context) { - transformToken(UNSAFE, context.getStart()); - super.enterUnsafeStatement(context); - } - - @Override - public void enterFixedStatement(FixedStatementContext context) { - transformToken(FIXED, context.getStart()); - super.enterFixedStatement(context); - } - - @Override - public void enterAccessor_declarations(Accessor_declarationsContext context) { - transformToken(ACCESSORS_BEGIN, context.getStart()); - super.enterAccessor_declarations(context); - } - - @Override - public void exitAccessor_declarations(Accessor_declarationsContext context) { - transformToken(ACCESSORS_END, context.getStart()); - super.enterAccessor_declarations(context); - } - - @Override - public void enterAccessor_body(Accessor_bodyContext context) { - transformToken(ACCESSOR_BEGIN, context.getStart()); - super.enterAccessor_body(context); - } - - @Override - public void exitAccessor_body(Accessor_bodyContext context) { - transformToken(ACCESSOR_END, context.getStart()); - super.exitAccessor_body(context); - } - - @Override - public void enterConstant_declaration(Constant_declarationContext context) { - transformToken(CONSTANT, context.getStart()); - super.enterConstant_declaration(context); - } - - @Override - public void enterField_declaration(Field_declarationContext context) { - transformToken(FIELD, context.getStart()); - super.enterField_declaration(context); +public class CSharpListener extends AbstractAntlrListener { + public CSharpListener() { + visit(UsingNamespaceDirectiveContext.class).map(USING_DIRECTIVE); + visit(UsingAliasDirectiveContext.class, this::isAliasUsageAlsoImport).map(USING_DIRECTIVE); + visit(UsingStaticDirectiveContext.class).map(USING_DIRECTIVE); + + visit(Method_invocationContext.class).map(INVOCATION); + visit(Object_creation_expressionContext.class).map(OBJECT_CREATION); + visit(Array_initializerContext.class).map(ARRAY_CREATION); + visit(Assignment_operatorContext.class).map(ASSIGNMENT); + visit(IfStatementContext.class).map(IF); + visit(ELSE).map(IF); + visit(If_bodyContext.class).map(IF_BEGIN, IF_END); + visit(Switch_sectionContext.class).map(SWITCH_BEGIN, SWITCH_END); + visit(SwitchStatementContext.class).map(CASE); + + visit(DoStatementContext.class).map(LOOP_BEGIN, LOOP_END); + visit(WhileStatementContext.class).map(LOOP_BEGIN, LOOP_END); + visit(ForStatementContext.class).map(LOOP_BEGIN, LOOP_END); + visit(ForeachStatementContext.class).map(LOOP_BEGIN, LOOP_END); + + visit(BreakStatementContext.class).map(BREAK); + visit(ContinueStatementContext.class).map(CONTINUE); + visit(GotoStatementContext.class).map(GOTO); + + visit(ReturnStatementContext.class).map(RETURN); + visit(ThrowStatementContext.class).map(THROW); + + visit(CheckedStatementContext.class).map(CHECKED); + visit(CheckedExpressionContext.class).map(CHECKED); + visit(UncheckedStatementContext.class).map(UNCHECKED); + visit(UncheckedExpressionContext.class).map(UNCHECKED); + + visit(LockStatementContext.class).map(LOCK); + + visit(TryStatementContext.class).map(TRY); + visit(Specific_catch_clauseContext.class).map(CATCH); + visit(Finally_clauseContext.class).map(FINALLY); + + visit(Namespace_declarationContext.class).map(NAMESPACE); + visit(Namespace_bodyContext.class).map(NAMESPACE_BEGIN, NAMESPACE_END); + visit(Class_definitionContext.class).map(CLASS); + visit(Class_bodyContext.class, this::isClassBody).map(CLASS_BEGIN, CLASS_END); + visit(Method_declarationContext.class).map(METHOD); + visit(Method_bodyContext.class).map(METHOD_BEGIN, METHOD_END); + visit(Property_declarationContext.class).map(PROPERTY); + visit(Event_declarationContext.class).map(EVENT); + visit(Indexer_declarationContext.class).map(INDEXER); + visit(Operator_declarationContext.class).map(OPERATOR); + visit(BodyContext.class, this::isOperatorBody).map(METHOD_BEGIN, METHOD_END); + visit(Conversion_operator_declaratorContext.class).map(OPERATOR); + visit(BodyContext.class, this::isConversionOperatorBody).map(METHOD_BEGIN, METHOD_END); + visit(Constructor_declarationContext.class).map(CONSTRUCTOR); + visit(BodyContext.class, this::isConstructorBody).map(METHOD_BEGIN, METHOD_END); + visit(Destructor_definitionContext.class).map(DESTRUCTOR); + visit(Struct_definitionContext.class).map(STRUCT); + visit(Struct_bodyContext.class).map(STRUCT_BEGIN, STRUCT_END); + visit(Interface_definitionContext.class).map(INTERFACE); + visit(Class_bodyContext.class, this::isInterfaceBody).map(INTERFACE_BEGIN, INTERFACE_END); + visit(Enum_definitionContext.class).map(ENUM); + visit(Enum_bodyContext.class).map(ENUM_BEGIN, ENUM_END); + visit(Enum_member_declarationContext.class).map(ENUMERAL); + visit(AttributeContext.class).map(ATTRIBUTE); + visit(Delegate_definitionContext.class).map(DELEGATE); + visit(UnsafeStatementContext.class).map(UNSAFE); + visit(FixedStatementContext.class).map(FIXED); + visit(Accessor_declarationsContext.class).map(ACCESSORS_BEGIN, ACCESSORS_END); + visit(Accessor_bodyContext.class).map(ACCESSOR_BEGIN, ACCESSOR_END); + visit(Constant_declarationContext.class).map(CONSTANT); + visit(Field_declarationContext.class).map(FIELD); + visit(Local_variable_declarationContext.class).map(LOCAL_VARIABLE); + visit(Local_constant_declarationContext.class).map(LOCAL_VARIABLE); + + registerUnaryOperatorVisitors(); + } + + private void registerUnaryOperatorVisitors() { + visit(OP_DEC).map(ASSIGNMENT); + visit(OP_INC).map(ASSIGNMENT); + + visit(Shift_expressionContext.class, expr -> expr.additive_expression().size() == 2).map(ASSIGNMENT); + + visit(OP_ADD_ASSIGNMENT).map(ASSIGNMENT); + visit(OP_SUB_ASSIGNMENT).map(ASSIGNMENT); + visit(OP_AND_ASSIGNMENT).map(ASSIGNMENT); + visit(OP_DIV_ASSIGNMENT).map(ASSIGNMENT); + visit(OP_MOD_ASSIGNMENT).map(ASSIGNMENT); + visit(OP_OR_ASSIGNMENT).map(ASSIGNMENT); + visit(OP_XOR_ASSIGNMENT).map(ASSIGNMENT); + visit(OP_MULT_ASSIGNMENT).map(ASSIGNMENT); + visit(OP_COALESCING_ASSIGNMENT).map(ASSIGNMENT); + } + + private boolean isClassBody(ParserRuleContext context) { + return hasAncestor(context, Class_definitionContext.class, Interface_definitionContext.class); + } + + private boolean isInterfaceBody(ParserRuleContext context) { + return hasAncestor(context, Interface_definitionContext.class, Class_definitionContext.class); + } + + private boolean isConstructorBody(BodyContext context) { + return context.parent instanceof Constructor_declarationContext; + } + + private boolean isOperatorBody(BodyContext context) { + return context.parent instanceof Operator_declarationContext; + } + + private boolean isConversionOperatorBody(BodyContext context) { + if (!(context.parent instanceof Common_member_declarationContext parent)) { + return false; + } + + return parent.conversion_operator_declarator() != null; } - @Override - public void enterLocal_variable_declaration(Local_variable_declarationContext context) { - transformToken(LOCAL_VARIABLE, context.getStart()); - super.enterLocal_variable_declaration(context); + private boolean isAliasUsageAlsoImport(UsingAliasDirectiveContext context) { + Namespace_or_type_nameContext namespace = getDescendant(context, Namespace_or_type_nameContext.class); + + return namespace != null && (!namespace.DOT().isEmpty() && getDescendant(namespace, Type_argument_listContext.class) == null); } } diff --git a/languages/csharp/src/main/java/de/jplag/csharp/CSharpParserAdapter.java b/languages/csharp/src/main/java/de/jplag/csharp/CSharpParserAdapter.java index 3b2b0d8a2..7d0b8951d 100644 --- a/languages/csharp/src/main/java/de/jplag/csharp/CSharpParserAdapter.java +++ b/languages/csharp/src/main/java/de/jplag/csharp/CSharpParserAdapter.java @@ -1,80 +1,37 @@ package de.jplag.csharp; -import java.io.BufferedReader; -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - -import org.antlr.v4.runtime.CharStreams; +import org.antlr.v4.runtime.CharStream; import org.antlr.v4.runtime.CommonTokenStream; +import org.antlr.v4.runtime.Lexer; import org.antlr.v4.runtime.ParserRuleContext; -import org.antlr.v4.runtime.tree.ParseTree; -import org.antlr.v4.runtime.tree.ParseTreeWalker; -import de.jplag.AbstractParser; -import de.jplag.ParsingException; -import de.jplag.Token; -import de.jplag.TokenType; +import de.jplag.antlr.AbstractAntlrListener; +import de.jplag.antlr.AbstractAntlrParserAdapter; import de.jplag.csharp.grammar.CSharpLexer; import de.jplag.csharp.grammar.CSharpParser; -import de.jplag.util.FileUtils; /** * Parser adapter for the ANTLR 4 CSharp Parser and Lexer. It receives file to parse and passes them to the ANTLR * pipeline. Then it walks the produced parse tree and creates JPlag token with the {@link CSharpListener}. - * @author Timur Saglam */ -public class CSharpParserAdapter extends AbstractParser { - private List tokens; - private File currentFile; - - /** - * Creates the parser adapter. - */ - public CSharpParserAdapter() { - super(); +public class CSharpParserAdapter extends AbstractAntlrParserAdapter { + @Override + protected Lexer createLexer(CharStream input) { + return new CSharpLexer(input); } - /** - * Parses all tokens from a set of files. - * @param files is the set of files. - * @return the list of parsed tokens. - */ - public List parse(Set files) throws ParsingException { - tokens = new ArrayList<>(); - for (File file : files) { - parseFile(file); - tokens.add(Token.fileEnd(file)); - } - return tokens; + @Override + protected CSharpParser createParser(CommonTokenStream tokenStream) { + return new CSharpParser(tokenStream); } - private void parseFile(File file) throws ParsingException { - try (BufferedReader reader = FileUtils.openFileReader(file)) { - currentFile = file; - - // create a lexer, a parser and a buffer between them. - CSharpLexer lexer = new CSharpLexer(CharStreams.fromReader(reader)); - CommonTokenStream tokens = new CommonTokenStream(lexer); - CSharpParser parser = new CSharpParser(tokens); - - // Create a tree walker and the entry context defined by the parser grammar - ParserRuleContext entryContext = parser.compilation_unit(); - ParseTreeWalker treeWalker = new ParseTreeWalker(); - - // Walk over the parse tree: - for (int i = 0; i < entryContext.getChildCount(); i++) { - ParseTree parseTree = entryContext.getChild(i); - treeWalker.walk(new CSharpListener(this), parseTree); - } - } catch (IOException exception) { - throw new ParsingException(file, exception.getMessage(), exception); - } + @Override + protected ParserRuleContext getEntryContext(CSharpParser parser) { + return parser.compilation_unit(); } - /* package-private */ void addToken(TokenType type, int line, int column, int length) { - tokens.add(new Token(type, currentFile, line, column, length)); + @Override + protected AbstractAntlrListener getListener() { + return new CSharpListener(); } } diff --git a/languages/csharp/src/main/java/de/jplag/csharp/CSharpTokenType.java b/languages/csharp/src/main/java/de/jplag/csharp/CSharpTokenType.java index f8d6a4347..3895ed55e 100644 --- a/languages/csharp/src/main/java/de/jplag/csharp/CSharpTokenType.java +++ b/languages/csharp/src/main/java/de/jplag/csharp/CSharpTokenType.java @@ -17,10 +17,6 @@ public enum CSharpTokenType implements TokenType { SWITCH_BEGIN("SWITCH{"), SWITCH_END("}SWITCH"), CASE("CASE"), - DO("DO"), - WHILE("WHILE"), - FOR("FOR"), - FOREACH("FOREACH"), BREAK("BREAK"), CONTINUE("CONTINUE"), GOTO("GOTO"), @@ -29,10 +25,10 @@ public enum CSharpTokenType implements TokenType { CHECKED("CHECKED"), UNCHECKED("UNCHECKED"), LOCK("LOCK"), - USING("USING"), TRY("TRY"), CATCH("CATCH"), FINALLY("FINALLY"), + NAMESPACE("NAMESPACE"), NAMESPACE_BEGIN("NAMESPACE{"), NAMESPACE_END("}NAMESPACE"), USING_DIRECTIVE("USING"), @@ -67,7 +63,10 @@ public enum CSharpTokenType implements TokenType { ACCESSORS_BEGIN("ACCESSORS{"), ACCESSORS_END("}ACCESSORS"), ACCESSOR_BEGIN("ACCESSOR{"), - ACCESSOR_END("}ACCESSOR"); + ACCESSOR_END("}ACCESSOR"), + + LOOP_BEGIN("LOOP{"), + LOOP_END("}LOOP"); private final String description; diff --git a/languages/csharp/src/test/java/de/jplag/csharp/CSharpTest.java b/languages/csharp/src/test/java/de/jplag/csharp/CSharpTest.java new file mode 100644 index 000000000..2acbe4d98 --- /dev/null +++ b/languages/csharp/src/test/java/de/jplag/csharp/CSharpTest.java @@ -0,0 +1,56 @@ +package de.jplag.csharp; + +import static de.jplag.csharp.CSharpTokenType.ACCESSORS_BEGIN; +import static de.jplag.csharp.CSharpTokenType.ACCESSORS_END; +import static de.jplag.csharp.CSharpTokenType.ACCESSOR_BEGIN; +import static de.jplag.csharp.CSharpTokenType.ACCESSOR_END; +import static de.jplag.csharp.CSharpTokenType.ASSIGNMENT; +import static de.jplag.csharp.CSharpTokenType.CLASS; +import static de.jplag.csharp.CSharpTokenType.CLASS_BEGIN; +import static de.jplag.csharp.CSharpTokenType.CLASS_END; +import static de.jplag.csharp.CSharpTokenType.CONSTRUCTOR; +import static de.jplag.csharp.CSharpTokenType.FIELD; +import static de.jplag.csharp.CSharpTokenType.IF; +import static de.jplag.csharp.CSharpTokenType.IF_BEGIN; +import static de.jplag.csharp.CSharpTokenType.IF_END; +import static de.jplag.csharp.CSharpTokenType.INVOCATION; +import static de.jplag.csharp.CSharpTokenType.LOCAL_VARIABLE; +import static de.jplag.csharp.CSharpTokenType.METHOD; +import static de.jplag.csharp.CSharpTokenType.METHOD_BEGIN; +import static de.jplag.csharp.CSharpTokenType.METHOD_END; +import static de.jplag.csharp.CSharpTokenType.PROPERTY; +import static de.jplag.csharp.CSharpTokenType.RETURN; + +import de.jplag.testutils.LanguageModuleTest; +import de.jplag.testutils.datacollector.TestDataCollector; +import de.jplag.testutils.datacollector.TestSourceIgnoredLinesCollector; + +public class CSharpTest extends LanguageModuleTest { + public CSharpTest() { + super(new CSharpLanguage(), CSharpTokenType.class); + } + + @Override + protected void collectTestData(TestDataCollector collector) { + collector.testFile("TestClass.cs").testSourceCoverage().testTokenSequence(CLASS, CLASS_BEGIN, FIELD, CONSTRUCTOR, METHOD_BEGIN, + LOCAL_VARIABLE, METHOD_END, METHOD, METHOD_BEGIN, IF, IF_BEGIN, INVOCATION, IF_END, IF, IF_BEGIN, INVOCATION, IF_END, METHOD_END, + PROPERTY, ACCESSORS_BEGIN, ACCESSOR_BEGIN, ACCESSOR_END, ACCESSOR_BEGIN, ACCESSOR_END, ACCESSORS_END, FIELD, PROPERTY, + ACCESSORS_BEGIN, ACCESSOR_BEGIN, RETURN, ACCESSOR_END, ACCESSOR_BEGIN, ASSIGNMENT, ACCESSOR_END, ACCESSORS_END, CLASS_END); + + collector.testFile("AllInOneNoPreprocessor.cs").testSourceCoverage().testTokenCoverage(); + } + + @Override + protected void configureIgnoredLines(TestSourceIgnoredLinesCollector collector) { + collector.ignoreMultipleLines("/*", "*/"); + collector.ignoreLinesByPrefix("//"); + collector.ignoreLinesByRegex(".*//test-ignore"); + + // Using (import) as alias + collector.ignoreLinesByRegex("using.*=.*<.*>.*;"); + collector.ignoreLinesByRegex("using.*=[^.]+;"); + + collector.ignoreLinesByPrefix("extern"); + collector.ignoreByCondition(line -> line.trim().matches("[a-zA-Z0-9]+:.*")); + } +} diff --git a/languages/csharp/src/test/java/de/jplag/csharp/MinimalCSharpTest.java b/languages/csharp/src/test/java/de/jplag/csharp/MinimalCSharpTest.java deleted file mode 100644 index e4f710ab0..000000000 --- a/languages/csharp/src/test/java/de/jplag/csharp/MinimalCSharpTest.java +++ /dev/null @@ -1,75 +0,0 @@ -package de.jplag.csharp; - -import static de.jplag.csharp.CSharpTokenType.ACCESSORS_BEGIN; -import static de.jplag.csharp.CSharpTokenType.ACCESSORS_END; -import static de.jplag.csharp.CSharpTokenType.ACCESSOR_BEGIN; -import static de.jplag.csharp.CSharpTokenType.ACCESSOR_END; -import static de.jplag.csharp.CSharpTokenType.ASSIGNMENT; -import static de.jplag.csharp.CSharpTokenType.CLASS; -import static de.jplag.csharp.CSharpTokenType.CLASS_BEGIN; -import static de.jplag.csharp.CSharpTokenType.CLASS_END; -import static de.jplag.csharp.CSharpTokenType.CONSTRUCTOR; -import static de.jplag.csharp.CSharpTokenType.FIELD; -import static de.jplag.csharp.CSharpTokenType.IF; -import static de.jplag.csharp.CSharpTokenType.IF_BEGIN; -import static de.jplag.csharp.CSharpTokenType.IF_END; -import static de.jplag.csharp.CSharpTokenType.INVOCATION; -import static de.jplag.csharp.CSharpTokenType.LOCAL_VARIABLE; -import static de.jplag.csharp.CSharpTokenType.METHOD; -import static de.jplag.csharp.CSharpTokenType.METHOD_BEGIN; -import static de.jplag.csharp.CSharpTokenType.METHOD_END; -import static de.jplag.csharp.CSharpTokenType.PROPERTY; -import static de.jplag.csharp.CSharpTokenType.RETURN; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; - -import java.io.File; -import java.nio.file.Path; -import java.util.List; -import java.util.Set; - -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import de.jplag.ParsingException; -import de.jplag.SharedTokenType; -import de.jplag.Token; -import de.jplag.TokenPrinter; -import de.jplag.TokenType; - -class MinimalCSharpTest { - private final Logger logger = LoggerFactory.getLogger(MinimalCSharpTest.class); - - private static final Path BASE_PATH = Path.of("src", "test", "resources", "de", "jplag", "csharp"); - private static final String TEST_SUBJECT = "TestClass.cs"; - - private de.jplag.Language language; - private File baseDirectory; - - @BeforeEach - public void setUp() { - language = new CSharpLanguage(); - baseDirectory = BASE_PATH.toFile(); - assertTrue(baseDirectory.exists(), "Could not find base directory!"); - } - - @Test - void testParsingTestClass() throws ParsingException { - List expectedToken = List.of(CLASS, CLASS_BEGIN, FIELD, CONSTRUCTOR, LOCAL_VARIABLE, METHOD, METHOD_BEGIN, IF, IF_BEGIN, - INVOCATION, IF_END, IF_BEGIN, INVOCATION, IF_END, METHOD_END, PROPERTY, ACCESSORS_BEGIN, ACCESSOR_BEGIN, ACCESSOR_END, ACCESSOR_BEGIN, - ACCESSOR_END, ACCESSORS_END, FIELD, PROPERTY, ACCESSORS_BEGIN, ACCESSOR_BEGIN, RETURN, ACCESSOR_END, ACCESSOR_BEGIN, ASSIGNMENT, - ACCESSOR_END, ACCESSORS_END, CLASS_END, SharedTokenType.FILE_END); - - // Parse test input - List result = language.parse(Set.of(new File(baseDirectory, TEST_SUBJECT))); - logger.info(TokenPrinter.printTokens(result, baseDirectory)); - - // Compare parsed tokens: - assertEquals(expectedToken.size(), result.size()); - List actualToken = result.stream().map(Token::getType).toList(); - assertEquals(expectedToken, actualToken); - } - -} diff --git a/languages/csharp/src/test/resources/de/jplag/csharp/AllInOneNoPreprocessor.cs b/languages/csharp/src/test/resources/de/jplag/csharp/AllInOneNoPreprocessor.cs new file mode 100644 index 000000000..b819b136b --- /dev/null +++ b/languages/csharp/src/test/resources/de/jplag/csharp/AllInOneNoPreprocessor.cs @@ -0,0 +1,1050 @@ +//From https://github.com/antlr/grammars-v4/tree/master/csharp/examples + +extern alias Foo; + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Text; +using M = System.Math; + +using ConsoleApplication2.Test; + +/**/ +/* the previous comment is an empty delimited comment and not a document comment */ +/** this is a document comment */ +// this one is a single line comment + +using X = int1; +using Y = ABC.X; + +using static System.Math; +using static System.DayOfWeek; +using static System.Linq.Enumerable; + +[assembly: System.Copyright(@"(C)""2009")] +[module: System.Copyright("\n\t\u0123(C) \"2009" + "\u0123")] + +class TopLevelType : IDisposable +{ + void IDisposable.Dispose() { } +} + +namespace My +{ + using A.B; + + interface CoContra { } + delegate void CoContra2<[System.Obsolete()] out T, in K> () where T : struct; + + public unsafe partial class A : C, I + { + [DllImport("kernel32", SetLastError = true)] + static extern bool CreateDirectory(string name, SecurityAttribute sa); + + private const int global = int.MinValue - 1; + + static A() + { + } + + [method: Obsolete] + public A([param: Obsolete] int foo) : base(1) { + L: { //test-ignore + int i = sizeof(int); + ++i; + var s1 = $"x {1 , -2 :d}"; + var s2 = $@"x {1 , -2 :d}"; + } //test-ignore + + + Console.WriteLine(export.iefSupplied.command); + + const int? local = int.MaxValue; + const Guid? local0 = new Guid(r.ToString()); + + var привет = local; + var мир = local; + int local3 = 0, local4 = 1; + local3 = local4 = 1; + var local5 = null as Action ?? null; + var local6 = local5 is Action; + + var u = 1u; + var U = 1U; + long hex = 0xBADC0DE, Hex = 0XDEADBEEF, l = -1L, L = 1L, l2 = 2l; + ulong ul = 1ul, Ul = 1Ul, uL = 1uL, UL = 1UL, lu = 1lu, Lu = 1Lu, lU = 1lU, LU = 1LU; + int minInt32Value = -2147483648; + int minInt64Value = -9223372036854775808L; + + bool @bool; + byte @byte; + char @char = 'c', \u0066 = '\u0066', hexchar = '\x0130', hexchar2 = (char)0xBAD; + string \U00000065 = "\U00000065"; + decimal @decimal = 1.44M; + @decimal = 1.2m; + dynamic @dynamic; + double @double = M.PI; + @double = 1d; + @double = 1D; + @double = -1.2e3; + float @float = 1.2f; + @float = 1.44F; + int @int = local ?? -1; + long @long; + object @object; + sbyte @sbyte; + short @short; + string @string = @"""/*"; + uint @uint; + ulong @ulong; + ushort @ushort; + + dynamic dynamic = local5; + var add = 0; + var alias = 0; + var arglist = 0; + var ascending = 0; + var async = 0; + var await = 0; + var by = 0; + var descending = 0; + var dynamic = 0; + var equals = 0; + var from = 0; + var get = 0; + var group = 0; + var into = 0; + var join = 0; + var let = 0; + var nameof = 0; + var on = 0; + var orderby = 0; + var partial = 0; + var remove = 0; + var select = 0; + var set = 0; + var var = 0; + var when = 0; + var where = 0; + var yield = 0; + var __ = 0; + where = yield = 0; + + if (i > 0) + { + return; + } + else if (i == 0) + { + throw new Exception(); + } + var o1 = new MyObject(); + var o2 = new MyObject(var); + var o3 = new MyObject { A = i }; + var o4 = new MyObject(@dynamic) + { A = 0, B = 0, C = 0 };//test-ignore + var o5 = new { A = 0 }; + var dictionaryInitializer = new Dictionary + { //test-ignore + {1, ""}, //test-ignore + {2, "a"} //test-ignore + };//test-ignore + float[] a = new float[] + { 0f, 1.1f };//test-ignore + int[, ,] cube = { { { 111, 112, }, { 121, 122 } }, { { 211, 212 }, { 221, 222 } } }; + int[][] jagged = { { 111 }, { 121, 122 } }; + int[][,] arr = new int[5][,]; // as opposed to new int[][5,5] + arr[0] = new int[5,5]; // as opposed to arr[0,0] = new int[5]; + arr[0][0,0] = 47; + int[] arrayTypeInference = new[] { 0, 1, }; + switch (3) { } + switch (i) + {//test-ignore + case 0: case 1: + {//test-ignore + goto case 2; + }//test-ignore + case 2 + 3: + {//test-ignore + goto default; + break; + }//test-ignore + default: + {//test-ignore + return; + }//test-ignore + }//test-ignore + while (i < 10) { + ++i; + if (true) continue; + break; + } + do { + ++i; + if (true) continue; + break; + } while (i < 10); + for (int j = 0; j < 100; ++j) { + for(;;) { + for (int i = 0, j = 0; i < length; i++, j++) { } + if (true) continue; + break; + } + } + label: + goto label; + label2: ; + foreach (var i in Items()) { + if (i == 7) + return; + else + continue; + } + checked + {//test-ignore + checked(++i); + }//test-ignore + unchecked + {//test-ignore + unchecked(++i); + }//test-ignore + lock (sync) + process(); + using (var v = BeginScope()) + using (A a = new A()) + using (A a = new A(), b = new A()) + using (BeginScope()) + return; + yield return this.items[3];//test-ignore + yield break; //test-ignore + fixed (int* p = stackalloc int[100], q = &y) + { //test-ignore + *intref = 1; + } //test-ignore + fixed (int* p = stackalloc int[100]) + { //test-ignore + *intref = 1; + } //test-ignore + unsafe + { //test-ignore + int* p = null; + } //test-ignore + try + { //test-ignore + throw null; + } //test-ignore + catch (System.AccessViolationException av) + { //test-ignore + throw av; + } //test-ignore + catch (Exception) + { //test-ignore + throw; + } //test-ignore + finally + { //test-ignore + try { } catch { } + } //test-ignore + var anonymous = + { + A = 1, + B = 2, + C = 3, + }; //test-ignore + var query = from c in customers + let d = c//test-ignore + where d != null//test-ignore + join c1 in customers on c1.GetHashCode() equals c.GetHashCode() + join c1 in customers on c1.GetHashCode() equals c.GetHashCode() into e + group c by c.Country//test-ignore + into g //test-ignore + orderby g.Count() ascending + orderby g.Key descending //test-ignore + select new { Country = g.Key, CustCount = g.Count() }; + query = from c in customers + select c into d//test-ignore + select d;//test-ignore + } + ~A() + { //test-ignore + } //test-ignore + private readonly int f1; + [Obsolete] + [NonExisting] + [Foo::NonExisting(var, 5)] + [CLSCompliant(false)] + [Obsolete, System.NonSerialized, NonSerialized, CLSCompliant(true || false & true)] + private volatile int f2; + [return: Obsolete] + [method: Obsolete] + public void Handler(object value) + { + } + public int m(T t) where T : class, new() + { + base.m(t); + return 1; + } + public string P + { //test-ignore + get + { + return "A"; + } + set; + } //test-ignore + public abstract string P + { //test-ignore + get; + } //test-ignore + public abstract int this[int index] + { //test-ignore + protected internal get; + internal protected set; + } //test-ignore + [method: Obsolete] + [field: Obsolete] + [event: Obsolete] + public readonly event Event E; + [event: Test] + public event Action E1 + { //test-ignore + [Obsolete] + add { value = value; } + [Obsolete] + [return: Obsolete] + remove { E += Handler; E -= Handler; } + } //test-ignore + public static A operator +(A first, A second) + { + Delegate handler = new Delegate(Handler); + return first.Add(second); + } + [method: Obsolete] + [return: Obsolete] + public static bool operator true(A a) + { + return true; + } + public static bool operator false(A a) + { + return false; + } + class C + { + } + } + public struct S : I + { + public S() + { + } + private int f1; + [Obsolete("Use Script instead", error: false)] + private volatile int f2; + public abstract int m(T t) where T : struct + { + return 1; + } + public string P + { //test-ignore + get + { + int value = 0; + return "A"; + } + set; + } //test-ignore + public abstract string P + { //test-ignore + get; + } //test-ignore + public abstract int this[int index] + { //test-ignore + get; + internal protected set; + } //test-ignore + public event Event E; + public static A operator +(A first, A second) + { + return first.Add(second); + } + fixed int field[10];//test-ignore + class C + { + } + } + public interface I + { + void A(int value); + string Value + { //test-ignore + get; + set; + } //test-ignore + unsafe void UpdateSignatureByHashingContent([In]byte* buffer, int size); + } + [type: Flags] + public enum E + { + A, + B = A, + C = 2 + A, + D, + } + + public delegate void Delegate(object P); + namespace Test + { + using System; + using System.Collections; + public class Список + { + public static IEnumerable Power(int number, int exponent) + { + Список Список = new Список(); + Список.Main(); + int counter = (0 + 0); + int אתר = 0; + while (++counter++ < --exponent--) { + result = result * number + +number+++++number; + yield return result;//test-ignore + } + } + static void Main() + { + foreach (int i in Power(2, 8)) + { //test-ignore + Console.Write("{0} ", i); + } + } + async void Wait() + { + await System.Threading.Tasks.Task.Delay(0); + } + void AsyncAnonymous() // C # 5 feature + { + var task = Task.Factory.StartNew(async () => + { //test-ignore + return await new WebClient().DownloadStringTaskAsync("http://example.com"); + }); //test-ignore + } + } + } +} + +namespace ConsoleApplication1 +{ + namespace RecursiveGenericBaseType + { + class A : B, A> where T : A + { + protected virtual A M() { } + protected abstract B, A> N() { } + static B, A> O() { } + } + + sealed class B : A> + { + protected override A M() { } + protected sealed override B, A> N() { } + new static A O() { } + } + } + + namespace Boo + { + public class Bar where T : IComparable + { + public T f; + public class Foo : IEnumerable + { + public void Method(K k, T t, U u) + where K : IList, IList, IList //test-ignore + where V : IList //test-ignore + { + A a; + M(A(5)); + } + }; + }; + }; + + class Test + { + void Bar3() + { + var x = new Boo.Bar.Foo(); + x.Method(" ", 5, new object()); + + var q = from i in new int[] { 1, 2, 3, 4 } + where i > 5//test-ignore + select i;//test-ignore + } + + public static implicit operator Test(string s) + { + return new ConsoleApplication1.Test(); + } + public static explicit operator Test(string s = "") + { + return new Test(); + } + + public int foo = 5; + void Bar2() + { + foo = 6; + this.Foo = 5.GetType(); Test t = "sss"; + } + + public event EventHandler MyEvent = delegate { }; + + void Blah() + { + int i = 5; + int? j = 6; + + Expression> e = () => i; + Expression> e2 = b => () => { return; }; + Func f = async delegate (bool a) + { //test-ignore + return await !a; + }; //test-ignore + Func f2 = (a, b) => 0; + f2 = (int a, int b) => 1; + Action a = Blah; + f2 = () => {}; + f2 = () => {;}; + } + + delegate Recursive Recursive(Recursive r); + delegate Recursive Recursive(Recursive r); + + public Type Foo { + [Obsolete("Name", error = false)] + get//test-ignore + { + var result = typeof(IEnumerable); + var t = typeof(int?) == typeof(Nullable); + t = typeof(IEnumerable); + return typeof(IEnumerable<>); + } + set//test-ignore + { + var t = typeof(System.Int32); + t.ToString(); + t = value; + } + }//test-ignore + + public void Constants() + { + int i = 1 + 2 + 3 + 5; + global::System.String s = "a" + (System.String)"a" + "a" + "a" + "a" + "A"; + } + + public void ConstructedType() + { + List i = null; + int c = i.Count; + } + } +} + +namespace Comments.XmlComments.UndocumentedKeywords +{ + /// + /// Whatever + /// + /// + /// // + /// /* */ + /// + /// + /// + /// + /// + /// + /// + /// + /// + /// + class /*///*/C + { + void M(T t, U u) + { + // comment + /* *** / */ + /* // + */ + /*s*///comment + // /***/ + /*s*/int /*s*/intValue = 0; + intValue = intValue /*s*/+ 1; + string strValue = /*s*/"hello"; + /*s*/MyClass c = new MyClass(); + string verbatimStr = /*s*/@"\\\\"; + } + } + + //General Test F. Type a very long class name, verify colorization happens correctly only upto the correct size (118324) + class TestClassXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/*Scen8*/{ } + + class TestClassXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX22/*Scen9*/{ } + + class yield + { + void Foo(__arglist) + { + C c = null; + c.M(5, default(U)); + TypedReference tr = __makeref(c); + Type t = __reftype(tr); + int j = __refvalue(tr, int); + Params(a: t, b: t); + Params(ref c, out c); + } + void Params(ref dynamic a, out dynamic b, params dynamic[] c) {} + void Params(out dynamic a = 2, ref dynamic c = default(dynamic), params dynamic[][] c) {} + + public override string ToString() { return base.ToString(); } + + public partial void OnError(); + + public partial void method() + { + int?[] a = new int?[5];/*[] bug*/ // YES [] + int[] var = { 1, 2, 3, 4, 5 };/*,;*/ + int i = a[i];/*[]*/ + Foo f = new Foo();/*<> ()*/ + f.method();/*().*/ + i = i + i - i * i / i % i & i | i ^ i;/*+ - * / % & | ^*/ + bool b = true & false | true ^ false;/*& | ^*/ + b = !b;/*!*/ + i = ~i;/*~i*/ + b = i < i && i > i;/*< && >*/ + int? ii = 5;/*? bug*/ // NO ? + int f = true ? 1 : 0;/*? :*/ // YES : + i++;/*++*/ + i--;/*--*/ + b = true && false || true;/*&& ||*/ + i << 5;/*<<*/ + i >> 5;/*>>*/ + b = i == i && i != i && i <= i && i >= i;/*= == && != <= >=*/ + i += 5.0;/*+=*/ + i -= i;/*-=*/ + i *= i;/**=*/ + i /= i;/*/=*/ + i %= i;/*%=*/ + i &= i;/*&=*/ + i |= i;/*|=*/ + i ^= i;/*^=*/ + i <<= i;/*<<=*/ + i >>= i;/*>>=*/ + object s = x => x + 1;/*=>*/ + double d = .3; + Point point; + unsafe + {//test-ignore + Point* p = &point;/** &*/ + p->x = 10;/*->*/ + }//test-ignore + IO::BinaryReader br = null; + x[i: 1] = 3; + x[i: 1, j: 5] = "str"; + } + + struct Point { public int X; public int Y; public void ThisAccess() { this = this; } } + } + + // From here:https://github.com/dotnet/roslyn/wiki/New-Language-Features-in-C%23-6 + class CSharp6Features + { + // Initializers for auto-properties + public string First { get; set; } = "Jane"; + public string Last { get; set; } = "Doe"; + + // Getter-only auto-properties + public string Third { get; } = "Jane"; + public string Fourth { get; } = "Doe"; + + // Expression bodies on method-like members + public Point Move(int dx, int dy) => new Point(x + dx, y + dy); + public static Complex operator +(Complex a, Complex b) => a.Add(b); + public static implicit operator string(Person p) => p.First + " " + p.Last; + public void Print() => Console.WriteLine(First + " " + Last); + + // Expression bodies on property-like function members + public string Name => First + " " + Last; + public int this[long id] => id; + + async void Test() + { + // Using static + WriteLine(Sqrt(3*3 + 4*4)); + WriteLine(Friday - Monday); + var range = Range(5, 17); // Ok: not extension + var even = range.Where(i => i % 2 == 0); // Ok + + // Null-conditional operators + int? length = customers?.Length; // null if customers is null + Customer first = customers?[0]; // null if customers is null + int length = customers?.Length ?? 0; // 0 if customers is null + int? first = customers?[0]?.Orders?.Count(); + PropertyChanged?.Invoke(this, args); + + // String interpolation + string s = $"{p.Name, 20} is {p.Age:D3} year{{s}} old #"; + s = $"{p.Name} is \"{p.Age} year{(p.Age == 1 ? "" : "s")} old"; + s = $"{(p.Age == 2 ? $"{new Person { } }" : "")}"; + s = $@"\{p.Name} + ""\"; //test-ignore + s = $"Color [ R={func(b: 3):#0.##}, G={G:#0.##}, B={B:#0.##}, A={A:#0.##} ]"; + + // nameof expressions + if (x == null) + throw new ArgumentNullException(nameof(x)); + WriteLine(nameof(person.Address.ZipCode)); // prints "ZipCode" + + // Index initializers + var numbers = new Dictionary { + [7] = "seven", //test-ignore + [9] = "nine", //test-ignore + [13] = "thirteen" //test-ignore + }; //test-ignore + + // Exception filters + try {} + catch (MyException e) when (myfilter(e)) + { } //test-ignore + + // Await in catch and finally blocks + Resource res = null; + try + { //test-ignore + res = await Resource.OpenAsync(); // You could do this. + } //test-ignore + catch(ResourceException e) + { //test-ignore + await Resource.LogAsync(res, e); // Now you can do this … + } //test-ignore + finally + { //test-ignore + if (res != null) + await res.CloseAsync(); // … and this. + } //test-ignore + } + } +} + +class CSharp70 +{ + void PatternMatching(string arg, int b) + { + switch (arg) + { //test-ignore + case "A" when b > 50: + case "B" when b < 50: //test-ignore + default: + break; + } //test-ignore + + (A D, E H) = e; + + if (x?.y?.z is Type value2) + { + // code using value + } + + if (expr is Type v) { Hello(); } + } + + public static async Task LocalFunctions(string[] args) + { + string Hello2(int i) //test-ignore + { //test-ignore + return args[i]; + } //test-ignore + + async Task Hello(T i) => await Task.FromResult(args[i]); + await Hello(1); + } + + public static void OutVar(string[] args) + { + int.TryParse(Hello(1), out var item); + int.TryParse(Hello(1), out int item); + } + + public void ThrowExpression() + { + var result = nullableResult ?? throw new NullReferenceException(); + } + + public void BinaryLiterals() + { + int nineteen = 0b10011; + } + + public void DigitSeparators() + { + int bin = 0b1001_1010_0001_0100; + int hex = 0x1b_a0_44_fe; + int dec = 33_554_432; + int weird = 1_2__3___4____5_____6______7_______8________9; + double real = 1_000.111_1e-1_000; + } +} + +class CSharp71 +{ + void DefaultWithoutTypeName(string content = default) + { + DefaultWithoutTypeName(default); + } + + void TupleRecognize(int a, (int, int) b, (int, int, int)? c) + { + var result = list.Select(c => (c.f1, f3: c.f2)).Where(t => t.f2 == 1); + } +} + +class CSharp72 +{ + readonly struct ReadonlyRef1 + { + Func s = (in int x) => x; + ref TValue this[in TKey index] => null; + public static Vector3 operator+(in Vector3 x, in Vector3 y) => null; + + static readonly ref Vector3 M1_Trace() + { + // OK + ref readonly var r1 = ref M1(); + + // Not valid. Need an LValue + ref readonly Vector3 r2 = ref default(Vector3); + + // Not valid. r1 is readonly. + Mutate(ref r1); + + // OK. + Print(in r1); + + // OK. + return ref r1; + } + } + + ref struct ReadonlyRef2 + { + ref readonly Guid Test(in Vector3 v1, in Vector3 v2) + { + // not OK!! + v1 = default(Vector3); + + // not OK!! + v1.X = 0; + + // not OK!! + foo(ref v1.X); + + return ref (arr != null ? ref arr[0]: ref otherArr[0]); + + Span span = stackalloc int[1]; + + // OK + return new Vector3(v1.X + v2.X, v1.Y + v2.Y, v1.Z + v2.Z); + } + + ref T Choice(bool condition, ref T consequence, ref T alternative) + { + if (condition) + { + return ref consequence; + } + else + { + return ref alternative; + } + } + } + + public void DoSomething(bool isEmployed, string personName, int personAge) { } + + public void NonTrailingNamedArguments() + { + DoSomething(isEmployed:true, name, age); // currently CS1738, but would become legal + DoSomething(true, personName:name, age); // currently CS1738, but would become legal + DoSomething(name, isEmployed:true, age); // remains illegal + DoSomething(name, age, isEmployed:true); // remains illegal + DoSomething(true, personAge:age, personName:name); // already legal + } + + public void ConditionalRef() + { + ref var r = ref (arr != null ? ref arr[0]: ref otherArr[0]); + } + + public void LeadingSeparator() + { + var res = 0 + + 123 // permitted in C# 1.0 and later //test-ignore + + 1_2_3 // permitted in C# 7.0 and later //test-ignore + + 0x1_2_3 // permitted in C# 7.0 and later //test-ignore + + 0b101 // binary literals added in C# 7.0 //test-ignore + + 0b1_0_1 // permitted in C# 7.0 and later //test-ignore + + // in C# 7.2, _ is permitted after the `0x` or `0b` + + 0x_1_2 // permitted in C# 7.2 and later //test-ignore + + 0b_1_0_1 // permitted in C# 7.2 and later //test-ignore + ; //test-ignore + } +} + +class CSharp73 +{ + void Blittable(T value) where T : unmanaged + { //test-ignore + var unmanaged = 666; + } //test-ignore + + unsafe struct IndexingMovableFixed + { + public fixed int myFixedField[10]; //test-ignore + } + + static IndexingMovableFixed s; + + public unsafe void IndexingMovableFixedFields() + { + int* ptr = s.myFixedField; + int t = s.myFixedField[5]; + } + + public void PatternBasedFixed() + { + fixed(byte* ptr = byteArray) + { //test-ignore + // ptr is a native pointer to the first element of the array + // byteArray is protected from being moved/collected by the GC for the duration of this block + } //test-ignore + } + + public void StackallocArrayInitializer() + { + Span a = stackalloc int[3]; // currently allowed + Span a = stackalloc int[3] { 1, 2, 3 }; + Span a = stackalloc int[] { 1, 2, 3 }; + Span a = stackalloc[] { 1, 2, 3 }; + } + + public void TupleEquality() + { + (int, (int, int)) t1, t2; + var res = t1 == (1, (2, 3)); + } +} + +namespace CSharp80 +{ + class CSharp80ExceptInterfaceDefaultImplement + { + void ReferenceNullable() + { + var? x = E; + x!.ToString(); + string? wtf = null; + int?[]? hello; + } + + void Patterns() + { + if (o is string { Length: 5 } s) Do(); + + return lang.CountOfTokens switch + { //test-ignore + 1 => 100, //test-ignore + 2 => 200, //test-ignore + _ => throw new global::System.Exception() + }; //test-ignore + + var newState = (GetState(), action, hasKey) switch + { //test-ignore + (DoorState.Closed, Action.Open, _) => DoorState.Opened, //test-ignore + (DoorState.Opened, Action.Close, _) => DoorState.Closed, //test-ignore + (DoorState.Closed, Action.Lock, true) => DoorState.Locked, //test-ignore + (DoorState.Locked, Action.Unlock, true) => DoorState.Closed, //test-ignore + (var state, _, _) => state //test-ignore + }; //test-ignore + } + + async Task AsyncStreams() + { + await foreach (var item in asyncEnumerables) + { //test-ignore + } + } + + void Ranges() + { + var thirdItem = list[2]; // list[2] + var lastItem = list[^1]; // list[Index.CreateFromEnd(1)] + var multiDimensional = list[3, ^2]; // list[3, Index.CreateFromEnd(2)] + + var slice1 = list[2..^3]; // list[Range.Create(2, Index.CreateFromEnd(3))] + var slice2 = list[..^3]; // list[Range.ToEnd(Index.CreateFromEnd(3))] + var slice3 = list[2..]; // list[Range.FromStart(2)] + var slice4 = list[..]; // list[Range.All] + var multiDimensional = list[1..2, ..]; // list[Range.Create(1, 2), Range.All] + } + + void UsingDeclarators() + { + using var item = new FileStream("./.f"); + fixed char* ch = "hell"; + item.Dispose(); // no! + } + + void StaticLocalFunction() + { + static unsafe void Func1() {} //test-ignore + static unsafe void Func1() {} //test-ignore + async static void Func2() {} //test-ignore + static async void Func2() {} //test-ignore + } + + void NullCoalescingAssignment() + { + var item = a ??= b ??= c ??= d ??= throw new Exception(); + } + + public readonly float Hello() + { + return 0.1f; + } + } + + interface IA + { + void M() { WriteLine("IA.M"); } + } + + interface IA + { + void M() { WriteLine("IA.M"); } + } + + interface IB : IA + { + override void IA.M() { WriteLine("IB.M"); } // explicitly named + } + + interface IC : IA + { + override void M() { WriteLine("IC.M"); } // implicitly named + } +} diff --git a/languages/csharp/src/test/resources/de/jplag/csharp/TestClass.cs b/languages/csharp/src/test/resources/de/jplag/csharp/TestClass.cs index 4188cd3cb..3b6a4bd14 100644 --- a/languages/csharp/src/test/resources/de/jplag/csharp/TestClass.cs +++ b/languages/csharp/src/test/resources/de/jplag/csharp/TestClass.cs @@ -15,8 +15,7 @@ public void MyMethod(int parameter1, string parameter2) if(parameter1 == 0) { Console.WriteLine("Second parameter {0}", parameter2); } else { - Console.WriteLine("First Parameter {0}, second parameter {1}", - parameter1, parameter2); + Console.WriteLine("First Parameter {0}, second parameter {1}", parameter1, parameter2); } } @@ -26,8 +25,8 @@ public void MyMethod(int parameter1, string parameter2) private int myPropertyVar; public int MyProperty - { + {//test-ignore get { return myPropertyVar; } set { myPropertyVar = value; } - } + }//test-ignore } \ No newline at end of file diff --git a/languages/java/src/main/java/de/jplag/java/FixedSourcePositions.java b/languages/java/src/main/java/de/jplag/java/FixedSourcePositions.java new file mode 100644 index 000000000..7d031aa7c --- /dev/null +++ b/languages/java/src/main/java/de/jplag/java/FixedSourcePositions.java @@ -0,0 +1,30 @@ +package de.jplag.java; + +import com.sun.source.tree.CompilationUnitTree; +import com.sun.source.tree.Tree; +import com.sun.source.util.SourcePositions; + +/** + * Fixes the source positions, so that the end position is always at least the same as the start position. + */ +public class FixedSourcePositions implements SourcePositions { + private final SourcePositions base; + + /** + * New instance + * @param base The source positions to use as the base + */ + public FixedSourcePositions(SourcePositions base) { + this.base = base; + } + + @Override + public long getStartPosition(CompilationUnitTree compilationUnitTree, Tree tree) { + return this.base.getStartPosition(compilationUnitTree, tree); + } + + @Override + public long getEndPosition(CompilationUnitTree compilationUnitTree, Tree tree) { + return Math.max(this.getStartPosition(compilationUnitTree, tree), this.base.getEndPosition(compilationUnitTree, tree)); + } +} diff --git a/languages/java/src/main/java/de/jplag/java/JavaLanguage.java b/languages/java/src/main/java/de/jplag/java/JavaLanguage.java index f26b26f2c..2db6971ae 100644 --- a/languages/java/src/main/java/de/jplag/java/JavaLanguage.java +++ b/languages/java/src/main/java/de/jplag/java/JavaLanguage.java @@ -15,6 +15,7 @@ @MetaInfServices(de.jplag.Language.class) public class JavaLanguage implements de.jplag.Language { private static final String IDENTIFIER = "java"; + public static final int JAVA_VERSION = 21; private final Parser parser; diff --git a/languages/java/src/main/java/de/jplag/java/JavacAdapter.java b/languages/java/src/main/java/de/jplag/java/JavacAdapter.java index ae3b17015..c9127e39e 100644 --- a/languages/java/src/main/java/de/jplag/java/JavacAdapter.java +++ b/languages/java/src/main/java/de/jplag/java/JavacAdapter.java @@ -42,9 +42,10 @@ public void parseFiles(Set files, final Parser parser) throws ParsingExcep // We need to disable annotation processing, see // https://stackoverflow.com/questions/72737445/system-java-compiler-behaves-different-depending-on-dependencies-defined-in-mave - final CompilationTask task = javac.getTask(null, fileManager, listener, List.of("-proc:none"), null, javaFiles); + final CompilationTask task = javac.getTask(null, fileManager, listener, + List.of("-proc:none", "--enable-preview", "--release=" + JavaLanguage.JAVA_VERSION), null, javaFiles); final Trees trees = Trees.instance(task); - final SourcePositions positions = trees.getSourcePositions(); + final SourcePositions positions = new FixedSourcePositions(trees.getSourcePositions()); for (final CompilationUnitTree ast : executeCompilationTask(task, parser.logger)) { File file = new File(ast.getSourceFile().toUri()); final LineMap map = ast.getLineMap(); @@ -75,8 +76,7 @@ private Iterable executeCompilationTask(final Com private List processErrors(Logger logger, DiagnosticCollector listener) { return listener.getDiagnostics().stream().filter(it -> it.getKind() == javax.tools.Diagnostic.Kind.ERROR).map(diagnosticItem -> { File file = null; - if (diagnosticItem.getSource() instanceof JavaFileObject) { - JavaFileObject fileObject = (JavaFileObject) diagnosticItem.getSource(); + if (diagnosticItem.getSource() instanceof JavaFileObject fileObject) { file = new File(fileObject.toUri()); } logger.error("{}", diagnosticItem); diff --git a/languages/java/src/main/java/de/jplag/java/TokenGeneratingTreeScanner.java b/languages/java/src/main/java/de/jplag/java/TokenGeneratingTreeScanner.java index c026b975a..c8ab37c82 100644 --- a/languages/java/src/main/java/de/jplag/java/TokenGeneratingTreeScanner.java +++ b/languages/java/src/main/java/de/jplag/java/TokenGeneratingTreeScanner.java @@ -60,6 +60,8 @@ import com.sun.source.util.TreeScanner; final class TokenGeneratingTreeScanner extends TreeScanner { + private final static String ANONYMOUS_VARIABLE_NAME = ""; + private final File file; private final Parser parser; private final LineMap map; @@ -282,7 +284,23 @@ public Void visitSwitchExpression(SwitchExpressionTree node, Void unused) { public Void visitCase(CaseTree node, Void unused) { long start = positions.getStartPosition(ast, node); addToken(JavaTokenType.J_CASE, start, 4, CodeSemantics.createControl()); - return super.visitCase(node, null); + + this.scan(node.getLabels(), null); + if (node.getGuard() != null) { + addToken(JavaTokenType.J_IF_BEGIN, positions.getStartPosition(ast, node.getGuard()), 0, CodeSemantics.createControl()); + } + this.scan(node.getGuard(), null); + if (node.getCaseKind() == CaseTree.CaseKind.RULE) { + this.scan(node.getBody(), null); + } else { + this.scan(node.getStatements(), null); + } + + if (node.getGuard() != null) { + addToken(JavaTokenType.J_IF_END, positions.getEndPosition(ast, node), 0, CodeSemantics.createControl()); + } + + return null; } @Override @@ -444,22 +462,24 @@ public Void visitAssert(AssertTree node, Void unused) { @Override public Void visitVariable(VariableTree node, Void unused) { - long start = positions.getStartPosition(ast, node); - String name = node.getName().toString(); - boolean inLocalScope = variableRegistry.inLocalScope(); - // this presents a problem when classes are declared in local scopes, which can happen in ad-hoc implementations - CodeSemantics semantics; - if (inLocalScope) { - boolean mutable = isMutable(node.getType()); - variableRegistry.registerVariable(name, VariableScope.LOCAL, mutable); - semantics = new CodeSemantics(); - } else { - semantics = CodeSemantics.createKeep(); + if (!node.getName().contentEquals(ANONYMOUS_VARIABLE_NAME)) { + long start = positions.getStartPosition(ast, node); + String name = node.getName().toString(); + boolean inLocalScope = variableRegistry.inLocalScope(); + // this presents a problem when classes are declared in local scopes, which can happen in ad-hoc implementations + CodeSemantics semantics; + if (inLocalScope) { + boolean mutable = isMutable(node.getType()); + variableRegistry.registerVariable(name, VariableScope.LOCAL, mutable); + semantics = new CodeSemantics(); + } else { + semantics = CodeSemantics.createKeep(); + } + addToken(JavaTokenType.J_VARDEF, start, node.toString().length(), semantics); + // manually add variable to semantics since identifier isn't visited + variableRegistry.setNextVariableAccessType(VariableAccessType.WRITE); + variableRegistry.registerVariableAccess(name, !inLocalScope); } - addToken(JavaTokenType.J_VARDEF, start, node.toString().length(), semantics); - // manually add variable to semantics since identifier isn't visited - variableRegistry.setNextVariableAccessType(VariableAccessType.WRITE); - variableRegistry.registerVariableAccess(name, !inLocalScope); return super.visitVariable(node, null); } diff --git a/languages/java/src/test/java/de/jplag/java/JavaLanguageTest.java b/languages/java/src/test/java/de/jplag/java/JavaLanguageTest.java index 51e36d7c2..cf559d293 100644 --- a/languages/java/src/test/java/de/jplag/java/JavaLanguageTest.java +++ b/languages/java/src/test/java/de/jplag/java/JavaLanguageTest.java @@ -37,6 +37,15 @@ protected void collectTestData(TestDataCollector collector) { collector.testFile("CLI.java").testSourceCoverage().testContainedTokens(J_TRY_END, J_IMPORT, J_VARDEF, J_LOOP_BEGIN, J_ARRAY_INIT_BEGIN, J_IF_BEGIN, J_CATCH_END, J_COND, J_ARRAY_INIT_END, J_METHOD_BEGIN, J_TRY_BEGIN, J_CLASS_END, J_RETURN, J_ASSIGN, J_METHOD_END, J_IF_END, J_CLASS_BEGIN, J_NEWARRAY, J_PACKAGE, J_APPLY, J_LOOP_END, J_THROW, J_NEWCLASS, J_CATCH_BEGIN); + + collector.testFile("PatternMatching.java", "PatternMatchingManual.java").testSourceCoverage().testTokenSequence(J_CLASS_BEGIN, J_RECORD_BEGIN, + J_VARDEF, J_RECORD_END, J_METHOD_BEGIN, J_VARDEF, J_NEWCLASS, J_IF_BEGIN, J_VARDEF, J_IF_END, J_METHOD_END, J_CLASS_END); + + collector.testFile("StringConcat.java", "StringTemplate.java").testSourceCoverage().testTokenSequence(J_CLASS_BEGIN, J_METHOD_BEGIN, J_VARDEF, + J_VARDEF, J_VARDEF, J_APPLY, J_METHOD_END, J_CLASS_END); + + collector.testFile("AnonymousVariables.java").testTokenSequence(J_CLASS_BEGIN, J_METHOD_BEGIN, J_VARDEF, J_IF_BEGIN, J_IF_END, J_METHOD_END, + J_CLASS_END); } @Override diff --git a/languages/java/src/test/resources/de/jplag/java/AnonymousVariables.java b/languages/java/src/test/resources/de/jplag/java/AnonymousVariables.java new file mode 100644 index 000000000..41dd49238 --- /dev/null +++ b/languages/java/src/test/resources/de/jplag/java/AnonymousVariables.java @@ -0,0 +1,8 @@ +public class AnonymousVariables { + public void test(Object o) { + String _ = ""; + + if (o instanceof String _) { + } + } +} \ No newline at end of file diff --git a/languages/java/src/test/resources/de/jplag/java/PatternMatching.java b/languages/java/src/test/resources/de/jplag/java/PatternMatching.java new file mode 100644 index 000000000..1a0eeb28f --- /dev/null +++ b/languages/java/src/test/resources/de/jplag/java/PatternMatching.java @@ -0,0 +1,10 @@ +public class PatternMatchingManual { + private static final record Test(int x) { + } + + public void test() { + Object a = new Test(1); + if (a instanceof Test testA) { + } + } +} \ No newline at end of file diff --git a/languages/java/src/test/resources/de/jplag/java/PatternMatchingManual.java b/languages/java/src/test/resources/de/jplag/java/PatternMatchingManual.java new file mode 100644 index 000000000..c6a9dd446 --- /dev/null +++ b/languages/java/src/test/resources/de/jplag/java/PatternMatchingManual.java @@ -0,0 +1,11 @@ +public class PatternMatchingManual { + private static final record Test(int x) { + } + + public void test() { + Object a = new Test(1); + if (a instanceof Test) { + Test testA = (Test) a; + } + } +} \ No newline at end of file diff --git a/languages/java/src/test/resources/de/jplag/java/StringConcat.java b/languages/java/src/test/resources/de/jplag/java/StringConcat.java new file mode 100644 index 000000000..74bb33f32 --- /dev/null +++ b/languages/java/src/test/resources/de/jplag/java/StringConcat.java @@ -0,0 +1,8 @@ +public class StringConcat { + void test() { + int param1 = 1; + String param2 = "test"; + + String result = "prefix " + param1 + " infix " + param2.length() + "suffix"; + } +} \ No newline at end of file diff --git a/languages/java/src/test/resources/de/jplag/java/StringTemplate.java b/languages/java/src/test/resources/de/jplag/java/StringTemplate.java new file mode 100644 index 000000000..113a5a629 --- /dev/null +++ b/languages/java/src/test/resources/de/jplag/java/StringTemplate.java @@ -0,0 +1,8 @@ +public class StringTemplate { + void test() { + int param1 = 1; + String param2 = "test"; + + String result = STR."prefix \{param1} infix + \{param2.length()} suffix"; + } +} \ No newline at end of file diff --git a/languages/scala/pom.xml b/languages/scala/pom.xml index 8eb11b59a..978a50354 100644 --- a/languages/scala/pom.xml +++ b/languages/scala/pom.xml @@ -25,7 +25,7 @@ org.scalameta scalameta_${scala.compat.version} - 4.8.11 + 4.8.14 diff --git a/pom.xml b/pom.xml index 2f1d3904a..ef97b0b16 100644 --- a/pom.xml +++ b/pom.xml @@ -72,17 +72,17 @@ ${maven.multiModuleProjectDirectory}/coverage-report/target/site/jacoco-aggregate/jacoco.xml - 17 - 17 + 21 + 21 2.40.0 2.0.9 - 5.10.0 + 5.10.1 2.7.7 4.13.1 2.35.0 2.29.0 - 2.35.0 + 2.36.0 1.0.0 @@ -140,7 +140,7 @@ com.fasterxml.jackson.core jackson-databind - 2.15.2 + 2.16.0 @@ -167,7 +167,7 @@ org.mockito mockito-core - 5.5.0 + 5.7.0 test @@ -239,12 +239,12 @@ org.apache.maven.plugins maven-surefire-plugin - 3.1.2 + 3.2.2 org.jacoco jacoco-maven-plugin - 0.8.10 + 0.8.11 prepare-agent @@ -330,7 +330,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.6.0 + 3.6.2 attach-javadocs diff --git a/report-viewer/package-lock.json b/report-viewer/package-lock.json index 774bfc4df..4e5d5ffe9 100644 --- a/report-viewer/package-lock.json +++ b/report-viewer/package-lock.json @@ -11,12 +11,12 @@ "@fortawesome/fontawesome-svg-core": "^6.4.2", "@fortawesome/free-regular-svg-icons": "^6.4.2", "@fortawesome/free-solid-svg-icons": "^6.4.2", - "@fortawesome/vue-fontawesome": "^3.0.3", + "@fortawesome/vue-fontawesome": "^3.0.5", "chart.js": "^4.4.0", "chartjs-plugin-datalabels": "^2.2.0", - "highlight.js": "^11.8.0", + "highlight.js": "^11.9.0", "jszip": "^3.10.0", - "pinia": "^2.1.6", + "pinia": "^2.1.7", "slash": "^5.1.0", "vue": "^3.3.4", "vue-chartjs": "^5.2.0", @@ -25,30 +25,30 @@ "vue-virtual-scroller": "^2.0.0-beta.8" }, "devDependencies": { - "@playwright/test": "^1.38.1", - "@rushstack/eslint-patch": "^1.4.0", - "@types/jsdom": "^21.1.3", - "@types/node": "^18.18.0", - "@vitejs/plugin-vue": "^4.4.0", + "@playwright/test": "^1.39.0", + "@rushstack/eslint-patch": "^1.6.0", + "@types/jsdom": "^21.1.6", + "@types/node": "^18.18.9", + "@vitejs/plugin-vue": "^4.4.1", "@vue/eslint-config-prettier": "^8.0.0", - "@vue/eslint-config-typescript": "^11.0.3", - "@vue/test-utils": "^2.4.1", + "@vue/eslint-config-typescript": "^12.0.0", + "@vue/test-utils": "^2.4.2", "@vue/tsconfig": "^0.4.0", - "autoprefixer": "^10.4.15", - "eslint": "^8.50.0", - "eslint-plugin-vue": "^9.17.0", + "autoprefixer": "^10.4.16", + "eslint": "^8.54.0", + "eslint-plugin-vue": "^9.18.1", "husky": "^8.0.0", "jsdom": "^22.1.0", - "lint-staged": "^14.0.1", + "lint-staged": "^15.1.0", "npm-run-all": "^4.1.5", "postcss": "^8.4.31", - "prettier": "^3.0.3", - "prettier-plugin-tailwindcss": "^0.5.5", - "tailwindcss": "^3.3.3", - "typescript": "^5.2.2", - "vite": "^4.4.10", + "prettier": "^3.1.0", + "prettier-plugin-tailwindcss": "^0.5.7", + "tailwindcss": "^3.3.5", + "typescript": "^5.3.2", + "vite": "^4.5.0", "vitest": "^0.34.6", - "vue-tsc": "^1.8.15" + "vue-tsc": "^1.8.22" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -460,9 +460,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", + "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", "dev": true, "dependencies": { "ajv": "^6.12.4", @@ -483,9 +483,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.50.0.tgz", - "integrity": "sha512-NCC3zz2+nvYd+Ckfh87rA47zfu2QsQpvc6k1yzTk+b9KzRj0wkGa8LSoGOXN6Zv4lRf/EIoZ80biDh9HOI+RNQ==", + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", + "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -537,21 +537,21 @@ } }, "node_modules/@fortawesome/vue-fontawesome": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@fortawesome/vue-fontawesome/-/vue-fontawesome-3.0.3.tgz", - "integrity": "sha512-KCPHi9QemVXGMrfuwf3nNnNo129resAIQWut9QTAMXmXqL2ErABC6ohd2yY5Ipq0CLWNbKHk8TMdTXL/Zf3ZhA==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@fortawesome/vue-fontawesome/-/vue-fontawesome-3.0.5.tgz", + "integrity": "sha512-isZZ4+utQH9qg9cWxWYHQ9GwI3r5FeO7GnmzKYV+gbjxcptQhh+F99iZXi1Y9AvFUEgy8kRpAdvDlbb3drWFrw==", "peerDependencies": { "@fortawesome/fontawesome-svg-core": "~1 || ~6", "vue": ">= 3.0.0 < 4" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", + "@humanwhocodes/object-schema": "^2.0.1", "debug": "^4.1.1", "minimatch": "^3.0.5" }, @@ -573,9 +573,9 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", "dev": true }, "node_modules/@jest/schemas": { @@ -716,12 +716,12 @@ "dev": true }, "node_modules/@playwright/test": { - "version": "1.38.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.38.1.tgz", - "integrity": "sha512-NqRp8XMwj3AK+zKLbZShl0r/9wKgzqI/527bkptKXomtuo+dOjU9NdMASQ8DNC9z9zLOMbG53T4eihYr3XR+BQ==", + "version": "1.39.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.39.0.tgz", + "integrity": "sha512-3u1iFqgzl7zr004bGPYiN/5EZpRUSFddQBra8Rqll5N0/vfpqlP9I9EXqAoGacuAbX6c9Ulg/Cjqglp5VkK6UQ==", "dev": true, "dependencies": { - "playwright": "1.38.1" + "playwright": "1.39.0" }, "bin": { "playwright": "cli.js" @@ -731,9 +731,9 @@ } }, "node_modules/@rushstack/eslint-patch": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.4.0.tgz", - "integrity": "sha512-cEjvTPU32OM9lUFegJagO0mRnIn+rbqrG89vV8/xLnLFX0DoR0r1oy5IlTga71Q7uT3Qus7qm7wgeiMT/+Irlg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.0.tgz", + "integrity": "sha512-2/U3GXA6YiPYQDLGwtGlnNgKYBSwCFIHf8Y9LUY5VATHdtbLlU0Y1R3QoBnT0aB4qv/BEiVVsj7LJXoQCgJ2vA==", "dev": true }, "node_modules/@sinclair/typebox": { @@ -767,9 +767,9 @@ } }, "node_modules/@types/jsdom": { - "version": "21.1.3", - "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-21.1.3.tgz", - "integrity": "sha512-1zzqSP+iHJYV4lB3lZhNBa012pubABkj9yG/GuXuf6LZH1cSPIJBqFDrm5JX65HHt6VOnNYdTui/0ySerRbMgA==", + "version": "21.1.6", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-21.1.6.tgz", + "integrity": "sha512-/7kkMsC+/kMs7gAYmmBR9P0vGTnOoLhQhyhQJSlXGI5bzTHp6xdo0TtKWQAsz6pmSAeVqKSbqeyP6hytqr9FDw==", "dev": true, "dependencies": { "@types/node": "*", @@ -778,21 +778,24 @@ } }, "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "version": "7.0.13", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz", + "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==", "dev": true }, "node_modules/@types/node": { - "version": "18.18.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.0.tgz", - "integrity": "sha512-3xA4X31gHT1F1l38ATDIL9GpRLdwVhnEFC8Uikv5ZLlXATwrCYyPq7ZWHxzxc3J/30SUiwiYT+bQe0/XvKlWbw==", - "dev": true + "version": "18.18.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.9.tgz", + "integrity": "sha512-0f5klcuImLnG4Qreu9hPj/rEfFq6YRc5n2mAjSsH+ec/mJL+3voBH0+8T7o8RpFjH7ovc+TRsL/c7OYIQsPTfQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/semver": { - "version": "7.3.13", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz", + "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==", "dev": true }, "node_modules/@types/tough-cookie": { @@ -802,32 +805,33 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.1.tgz", - "integrity": "sha512-AVi0uazY5quFB9hlp2Xv+ogpfpk77xzsgsIEWyVS7uK/c7MZ5tw7ZPbapa0SbfkqE0fsAMkz5UwtgMLVk2BQAg==", + "version": "6.7.5", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.7.5.tgz", + "integrity": "sha512-JhtAwTRhOUcP96D0Y6KYnwig/MRQbOoLGXTON2+LlyB/N35SP9j1boai2zzwXb7ypKELXMx3DVk9UTaEq1vHEw==", "dev": true, "dependencies": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.59.1", - "@typescript-eslint/type-utils": "5.59.1", - "@typescript-eslint/utils": "5.59.1", + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.7.5", + "@typescript-eslint/type-utils": "6.7.5", + "@typescript-eslint/utils": "6.7.5", + "@typescript-eslint/visitor-keys": "6.7.5", "debug": "^4.3.4", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -836,25 +840,26 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.1.tgz", - "integrity": "sha512-nzjFAN8WEu6yPRDizIFyzAfgK7nybPodMNFGNH0M9tei2gYnYszRDqVA0xlnRjkl7Hkx2vYrEdb6fP2a21cG1g==", + "version": "6.7.5", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.7.5.tgz", + "integrity": "sha512-bIZVSGx2UME/lmhLcjdVc7ePBwn7CLqKarUBL4me1C5feOd663liTGjMBGVcGr+BhnSLeP4SgwdvNnnkbIdkCw==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.59.1", - "@typescript-eslint/types": "5.59.1", - "@typescript-eslint/typescript-estree": "5.59.1", + "@typescript-eslint/scope-manager": "6.7.5", + "@typescript-eslint/types": "6.7.5", + "@typescript-eslint/typescript-estree": "6.7.5", + "@typescript-eslint/visitor-keys": "6.7.5", "debug": "^4.3.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -863,16 +868,16 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.1.tgz", - "integrity": "sha512-mau0waO5frJctPuAzcxiNWqJR5Z8V0190FTSqRw1Q4Euop6+zTwHAf8YIXNwDOT29tyUDrQ65jSg9aTU/H0omA==", + "version": "6.7.5", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.7.5.tgz", + "integrity": "sha512-GAlk3eQIwWOJeb9F7MKQ6Jbah/vx1zETSDw8likab/eFcqkjSD7BI75SDAeC5N2L0MmConMoPvTsmkrg71+B1A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.59.1", - "@typescript-eslint/visitor-keys": "5.59.1" + "@typescript-eslint/types": "6.7.5", + "@typescript-eslint/visitor-keys": "6.7.5" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -880,25 +885,25 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.1.tgz", - "integrity": "sha512-ZMWQ+Oh82jWqWzvM3xU+9y5U7MEMVv6GLioM3R5NJk6uvP47kZ7YvlgSHJ7ERD6bOY7Q4uxWm25c76HKEwIjZw==", + "version": "6.7.5", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.7.5.tgz", + "integrity": "sha512-Gs0qos5wqxnQrvpYv+pf3XfcRXW6jiAn9zE/K+DlmYf6FcpxeNYN0AIETaPR7rHO4K2UY+D0CIbDP9Ut0U4m1g==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.59.1", - "@typescript-eslint/utils": "5.59.1", + "@typescript-eslint/typescript-estree": "6.7.5", + "@typescript-eslint/utils": "6.7.5", "debug": "^4.3.4", - "tsutils": "^3.21.0" + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "*" + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -907,12 +912,12 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.1.tgz", - "integrity": "sha512-dg0ICB+RZwHlysIy/Dh1SP+gnXNzwd/KS0JprD3Lmgmdq+dJAJnUPe1gNG34p0U19HvRlGX733d/KqscrGC1Pg==", + "version": "6.7.5", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.7.5.tgz", + "integrity": "sha512-WboQBlOXtdj1tDFPyIthpKrUb+kZf2VroLZhxKa/VlwLlLyqv/PwUNgL30BlTVZV1Wu4Asu2mMYPqarSO4L5ZQ==", "dev": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -920,21 +925,21 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.1.tgz", - "integrity": "sha512-lYLBBOCsFltFy7XVqzX0Ju+Lh3WPIAWxYpmH/Q7ZoqzbscLiCW00LeYCdsUnnfnj29/s1WovXKh2gwCoinHNGA==", + "version": "6.7.5", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.7.5.tgz", + "integrity": "sha512-NhJiJ4KdtwBIxrKl0BqG1Ur+uw7FiOnOThcYx9DpOGJ/Abc9z2xNzLeirCG02Ig3vkvrc2qFLmYSSsaITbKjlg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.59.1", - "@typescript-eslint/visitor-keys": "5.59.1", + "@typescript-eslint/types": "6.7.5", + "@typescript-eslint/visitor-keys": "6.7.5", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -947,52 +952,57 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.1.tgz", - "integrity": "sha512-MkTe7FE+K1/GxZkP5gRj3rCztg45bEhsd8HYjczBuYm+qFHP5vtZmjx3B0yUCDotceQ4sHgTyz60Ycl225njmA==", + "version": "6.7.5", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.7.5.tgz", + "integrity": "sha512-pfRRrH20thJbzPPlPc4j0UNGvH1PjPlhlCMq4Yx7EGjV7lvEeGX0U6MJYe8+SyFutWgSHsdbJ3BXzZccYggezA==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.59.1", - "@typescript-eslint/types": "5.59.1", - "@typescript-eslint/typescript-estree": "5.59.1", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.7.5", + "@typescript-eslint/types": "6.7.5", + "@typescript-eslint/typescript-estree": "6.7.5", + "semver": "^7.5.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": "^7.0.0 || ^8.0.0" } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.59.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.1.tgz", - "integrity": "sha512-6waEYwBTCWryx0VJmP7JaM4FpipLsFl9CvYf2foAE8Qh/Y0s+bxWysciwOs0LTBED4JCaNxTZ5rGadB14M6dwA==", + "version": "6.7.5", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.7.5.tgz", + "integrity": "sha512-3MaWdDZtLlsexZzDSdQWsFQ9l9nL8B80Z4fImSpyllFC/KLqWQRdEcB+gGGO+N3Q2uL40EsG66wZLsohPxNXvg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.59.1", - "eslint-visitor-keys": "^3.3.0" + "@typescript-eslint/types": "6.7.5", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true + }, "node_modules/@vitejs/plugin-vue": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.4.0.tgz", - "integrity": "sha512-xdguqb+VUwiRpSg+nsc2HtbAUSGak25DXYvpQQi4RVU1Xq1uworyoH/md9Rfd8zMmPR/pSghr309QNcftUVseg==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.4.1.tgz", + "integrity": "sha512-HCQG8VDFDM7YDAdcj5QI5DvUi+r6xvo9LgvYdk7LSkUNwdpempdB5horkMSZsbdey9Ywsf5aaU8kEPw9M5kREA==", "dev": true, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -1098,30 +1108,31 @@ } }, "node_modules/@volar/language-core": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.10.1.tgz", - "integrity": "sha512-JnsM1mIPdfGPxmoOcK1c7HYAsL6YOv0TCJ4aW3AXPZN/Jb4R77epDyMZIVudSGjWMbvv/JfUa+rQ+dGKTmgwBA==", + "version": "1.10.10", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.10.10.tgz", + "integrity": "sha512-nsV1o3AZ5n5jaEAObrS3MWLBWaGwUj/vAsc15FVNIv+DbpizQRISg9wzygsHBr56ELRH8r4K75vkYNMtsSNNWw==", "dev": true, "dependencies": { - "@volar/source-map": "1.10.1" + "@volar/source-map": "1.10.10" } }, "node_modules/@volar/source-map": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.10.1.tgz", - "integrity": "sha512-3/S6KQbqa7pGC8CxPrg69qHLpOvkiPHGJtWPkI/1AXCsktkJ6gIk/5z4hyuMp8Anvs6eS/Kvp/GZa3ut3votKA==", + "version": "1.10.10", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.10.10.tgz", + "integrity": "sha512-GVKjLnifV4voJ9F0vhP56p4+F3WGf+gXlRtjFZsv6v3WxBTWU3ZVeaRaEHJmWrcv5LXmoYYpk/SC25BKemPRkg==", "dev": true, "dependencies": { "muggle-string": "^0.3.1" } }, "node_modules/@volar/typescript": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.10.1.tgz", - "integrity": "sha512-+iiO9yUSRHIYjlteT+QcdRq8b44qH19/eiUZtjNtuh6D9ailYM7DVR0zO2sEgJlvCaunw/CF9Ov2KooQBpR4VQ==", + "version": "1.10.10", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.10.10.tgz", + "integrity": "sha512-4a2r5bdUub2m+mYVnLu2wt59fuoYWe7nf0uXtGHU8QQ5LDNfzAR0wK7NgDiQ9rcl2WT3fxT2AA9AylAwFtj50A==", "dev": true, "dependencies": { - "@volar/language-core": "1.10.1" + "@volar/language-core": "1.10.10", + "path-browserify": "^1.0.1" } }, "node_modules/@vue/compiler-core": { @@ -1190,14 +1201,14 @@ } }, "node_modules/@vue/eslint-config-typescript": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-11.0.3.tgz", - "integrity": "sha512-dkt6W0PX6H/4Xuxg/BlFj5xHvksjpSlVjtkQCpaYJBIEuKj2hOVU7r+TIe+ysCwRYFz/lGqvklntRkCAibsbPw==", + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-12.0.0.tgz", + "integrity": "sha512-StxLFet2Qe97T8+7L8pGlhYBBr8Eg05LPuTDVopQV6il+SK6qqom59BA/rcFipUef2jD8P2X44Vd8tMFytfvlg==", "dev": true, "dependencies": { - "@typescript-eslint/eslint-plugin": "^5.59.1", - "@typescript-eslint/parser": "^5.59.1", - "vue-eslint-parser": "^9.1.1" + "@typescript-eslint/eslint-plugin": "^6.7.0", + "@typescript-eslint/parser": "^6.7.0", + "vue-eslint-parser": "^9.3.1" }, "engines": { "node": "^14.17.0 || >=16.0.0" @@ -1214,17 +1225,17 @@ } }, "node_modules/@vue/language-core": { - "version": "1.8.15", - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.15.tgz", - "integrity": "sha512-zche5Aw8kkvp3YaghuLiOZyVIpoWHjSQ0EfjxGSsqHOPMamdCoa9x3HtbenpR38UMUoKJ88wiWuiOrV3B/Yq+A==", + "version": "1.8.22", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.22.tgz", + "integrity": "sha512-bsMoJzCrXZqGsxawtUea1cLjUT9dZnDsy5TuZ+l1fxRMzUGQUG9+Ypq4w//CqpWmrx7nIAJpw2JVF/t258miRw==", "dev": true, "dependencies": { - "@volar/language-core": "~1.10.0", - "@volar/source-map": "~1.10.0", + "@volar/language-core": "~1.10.5", + "@volar/source-map": "~1.10.5", "@vue/compiler-dom": "^3.3.0", - "@vue/reactivity": "^3.3.0", "@vue/shared": "^3.3.0", - "minimatch": "^9.0.0", + "computeds": "^0.0.1", + "minimatch": "^9.0.3", "muggle-string": "^0.3.1", "vue-template-compiler": "^2.7.14" }, @@ -1318,13 +1329,13 @@ "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==" }, "node_modules/@vue/test-utils": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-2.4.1.tgz", - "integrity": "sha512-VO8nragneNzUZUah6kOjiFmD/gwRjUauG9DROh6oaOeFwX1cZRUNHhdeogE8635cISigXFTtGLUQWx5KCb0xeg==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-2.4.2.tgz", + "integrity": "sha512-07lLjpG1o9tEBoWQfVOFhDT7+WFCdDeECoeSdzOuVgIi6nxb2JDLGNNOV6+3crPpyg/jMlIocj96UROcgomiGg==", "dev": true, "dependencies": { - "js-beautify": "1.14.9", - "vue-component-type-helpers": "1.8.4" + "js-beautify": "^1.14.9", + "vue-component-type-helpers": "^1.8.21" }, "peerDependencies": { "@vue/server-renderer": "^3.0.1", @@ -1342,16 +1353,6 @@ "integrity": "sha512-CPuIReonid9+zOG/CGTT05FXrPYATEqoDGNrEaqS4hwcw5BUNM2FguC0mOwJD4Jr16UpRVl9N0pY3P+srIbqmg==", "dev": true }, - "node_modules/@vue/typescript": { - "version": "1.8.15", - "resolved": "https://registry.npmjs.org/@vue/typescript/-/typescript-1.8.15.tgz", - "integrity": "sha512-qWyanQKXOsK84S8rP7QBrqsvUdQ0nZABZmTjXMpb3ox4Bp5IbkscREA3OPUrkgl64mAxwwCzIWcOc3BPTCPjQw==", - "dev": true, - "dependencies": { - "@volar/typescript": "~1.10.0", - "@vue/language-core": "1.8.15" - } - }, "node_modules/abab": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", @@ -1542,9 +1543,9 @@ "dev": true }, "node_modules/autoprefixer": { - "version": "10.4.15", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.15.tgz", - "integrity": "sha512-KCuPB8ZCIqFdA4HwKXsvz7j6gvSDNhDP7WnUjBleRkKjPdvCmHFuQ77ocavI8FT6NdvlBnE2UFr2H4Mycn8Vew==", + "version": "10.4.16", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.16.tgz", + "integrity": "sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==", "dev": true, "funding": [ { @@ -1562,8 +1563,8 @@ ], "dependencies": { "browserslist": "^4.21.10", - "caniuse-lite": "^1.0.30001520", - "fraction.js": "^4.2.0", + "caniuse-lite": "^1.0.30001538", + "fraction.js": "^4.3.6", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" @@ -1742,9 +1743,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001522", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001522.tgz", - "integrity": "sha512-TKiyTVZxJGhsTszLuzb+6vUZSjVOAhClszBr2Ta2k9IwtNBT/4dzmL6aywt0HCgEZlmwJzXJd8yNiob6HgwTRg==", + "version": "1.0.30001559", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001559.tgz", + "integrity": "sha512-cPiMKZgqgkg5LY3/ntGeLFUpi6tzddBNS58A4tnTgQw1zON7u2sZMU7SzOeVH4tj20++9ggL+V6FDOFMTaFFYA==", "dev": true, "funding": [ { @@ -1941,6 +1942,12 @@ "node": ">=14" } }, + "node_modules/computeds": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/computeds/-/computeds-0.0.1.tgz", + "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==", + "dev": true + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -2413,18 +2420,19 @@ } }, "node_modules/eslint": { - "version": "8.50.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.50.0.tgz", - "integrity": "sha512-FOnOGSuFuFLv/Sa+FDVRZl4GGVAAFFi8LecRsI5a1tMO5HIE8nCm4ivAlzt4dT3ol/PaaGC0rJEEXQmHJBGoOg==", + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz", + "integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.50.0", - "@humanwhocodes/config-array": "^0.11.11", + "@eslint/eslintrc": "^2.1.3", + "@eslint/js": "8.54.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -2508,9 +2516,9 @@ } }, "node_modules/eslint-plugin-vue": { - "version": "9.17.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.17.0.tgz", - "integrity": "sha512-r7Bp79pxQk9I5XDP0k2dpUC7Ots3OSWgvGZNu3BxmKK6Zg7NgVtcOB6OCna5Kb9oQwJPl5hq183WD0SY5tZtIQ==", + "version": "9.18.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.18.1.tgz", + "integrity": "sha512-7hZFlrEgg9NIzuVik2I9xSnJA5RsmOfueYgsUGUokEDLJ1LHtxO0Pl4duje1BriZ/jDWb+44tcIlC3yi0tdlZg==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", @@ -2528,19 +2536,6 @@ "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - }, - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/eslint-visitor-keys": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", @@ -2637,15 +2632,6 @@ "node": ">=4.0" } }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/estree-walker": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", @@ -2833,16 +2819,16 @@ } }, "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true, "engines": { "node": "*" }, "funding": { "type": "patreon", - "url": "https://www.patreon.com/infusion" + "url": "https://github.com/sponsors/rawify" } }, "node_modules/fs.realpath": { @@ -3002,9 +2988,9 @@ } }, "node_modules/globals": { - "version": "13.21.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", - "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -3078,12 +3064,6 @@ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "dev": true - }, "node_modules/graphemer": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", @@ -3181,9 +3161,9 @@ } }, "node_modules/highlight.js": { - "version": "11.8.0", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.8.0.tgz", - "integrity": "sha512-MedQhoqVdr0U6SSnWPzfiadUcDHfN/Wzq25AkXiQv9oiOO/sG0S7XkvpFIqWBl9Yq1UYyYOOVORs5UW2XlPyzg==", + "version": "11.9.0", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.9.0.tgz", + "integrity": "sha512-fJ7cW7fQGCYAkgv4CPfwFHrfd/cLS4Hau96JuJ+ZTOWhjnhoeN1ub1tFmALm/+lW5z4WCAuAV9bm05AP0mS6Gw==", "engines": { "node": ">=12.0.0" } @@ -3699,9 +3679,9 @@ "dev": true }, "node_modules/jiti": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.18.2.tgz", - "integrity": "sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", "dev": true, "bin": { "jiti": "bin/jiti.js" @@ -3853,27 +3833,27 @@ "dev": true }, "node_modules/lint-staged": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-14.0.1.tgz", - "integrity": "sha512-Mw0cL6HXnHN1ag0mN/Dg4g6sr8uf8sn98w2Oc1ECtFto9tvRF7nkXGJRbx8gPlHyoR0pLyBr2lQHbWwmUHe1Sw==", + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.1.0.tgz", + "integrity": "sha512-ZPKXWHVlL7uwVpy8OZ7YQjYDAuO5X4kMh0XgZvPNxLcCCngd0PO5jKQyy3+s4TL2EnHoIXIzP1422f/l3nZKMw==", "dev": true, "dependencies": { "chalk": "5.3.0", - "commander": "11.0.0", + "commander": "11.1.0", "debug": "4.3.4", - "execa": "7.2.0", + "execa": "8.0.1", "lilconfig": "2.1.0", - "listr2": "6.6.1", + "listr2": "7.0.2", "micromatch": "4.0.5", "pidtree": "0.6.0", "string-argv": "0.3.2", - "yaml": "2.3.1" + "yaml": "2.3.4" }, "bin": { "lint-staged": "bin/lint-staged.js" }, "engines": { - "node": "^16.14.0 || >=18.0.0" + "node": ">=18.12.0" }, "funding": { "url": "https://opencollective.com/lint-staged" @@ -3892,14 +3872,58 @@ } }, "node_modules/lint-staged/node_modules/commander": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-11.0.0.tgz", - "integrity": "sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", + "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", "dev": true, "engines": { "node": ">=16" } }, + "node_modules/lint-staged/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/lint-staged/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lint-staged/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "dev": true, + "engines": { + "node": ">=16.17.0" + } + }, "node_modules/lint-staged/node_modules/pidtree": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", @@ -3912,10 +3936,22 @@ "node": ">=0.10" } }, + "node_modules/lint-staged/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/listr2": { - "version": "6.6.1", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-6.6.1.tgz", - "integrity": "sha512-+rAXGHh0fkEWdXBmX+L6mmfmXmXvDGEKzkjxO+8mP3+nI/r/CWznVBvsibXdxda9Zz0OW2e2ikphN3OwCT/jSg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-7.0.2.tgz", + "integrity": "sha512-rJysbR9GKIalhTbVL2tYbF2hVyDnrf7pFUZBwjPaMIdadYHmeT+EVi/Bu3qd7ETQPahTotg2WRCatXwRBW554g==", "dev": true, "dependencies": { "cli-truncate": "^3.1.0", @@ -3927,14 +3963,6 @@ }, "engines": { "node": ">=16.0.0" - }, - "peerDependencies": { - "enquirer": ">= 2.3.0 < 3" - }, - "peerDependenciesMeta": { - "enquirer": { - "optional": true - } } }, "node_modules/load-json-file": { @@ -4202,12 +4230,6 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", - "dev": true - }, "node_modules/nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", @@ -4667,6 +4689,12 @@ "url": "https://github.com/inikulin/parse5?sponsor=1" } }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -4763,9 +4791,9 @@ } }, "node_modules/pinia": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.1.6.tgz", - "integrity": "sha512-bIU6QuE5qZviMmct5XwCesXelb5VavdOWKWaB17ggk++NUwQWWbP5YnsONTk3b752QkW9sACiR81rorpeOMSvQ==", + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.1.7.tgz", + "integrity": "sha512-+C2AHFtcFqjPih0zpYuvof37SFxMQ7OEG2zV9jRI12i9BOy3YQVAHwdKtyyc8pDcDyIc33WCIsZaCFWU7WWxGQ==", "dependencies": { "@vue/devtools-api": "^6.5.0", "vue-demi": ">=0.14.5" @@ -4833,12 +4861,12 @@ } }, "node_modules/playwright": { - "version": "1.38.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.38.1.tgz", - "integrity": "sha512-oRMSJmZrOu1FP5iu3UrCx8JEFRIMxLDM0c/3o4bpzU5Tz97BypefWf7TuTNPWeCe279TPal5RtPPZ+9lW/Qkow==", + "version": "1.39.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.39.0.tgz", + "integrity": "sha512-naE5QT11uC/Oiq0BwZ50gDmy8c8WLPRTEWuSSFVG2egBka/1qMoSqYQcROMT9zLwJ86oPofcTH2jBY/5wWOgIw==", "dev": true, "dependencies": { - "playwright-core": "1.38.1" + "playwright-core": "1.39.0" }, "bin": { "playwright": "cli.js" @@ -4851,9 +4879,9 @@ } }, "node_modules/playwright-core": { - "version": "1.38.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.38.1.tgz", - "integrity": "sha512-tQqNFUKa3OfMf4b2jQ7aGLB8o9bS3bOY0yMEtldtC2+spf8QXG9zvXLTXUeRsoNuxEYMgLYR+NXfAa1rjKRcrg==", + "version": "1.39.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.39.0.tgz", + "integrity": "sha512-+k4pdZgs1qiM+OUkSjx96YiKsXsmb59evFoqv8SKO067qBA+Z2s/dCzJij/ZhdQcs2zlTAgRKfeiiLm8PQ2qvw==", "dev": true, "bin": { "playwright-core": "cli.js" @@ -5002,9 +5030,9 @@ } }, "node_modules/prettier": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz", - "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.0.tgz", + "integrity": "sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -5029,9 +5057,9 @@ } }, "node_modules/prettier-plugin-tailwindcss": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.5.5.tgz", - "integrity": "sha512-voy0CjWv/CM8yeaduv5ZwovovpTGMR5LbzlhGF+LtEvMJt9wBeVTVnW781hL38R/RcDXCJwN2rolsgr94B/n0Q==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.5.7.tgz", + "integrity": "sha512-4v6uESAgwCni6YF6DwJlRaDjg9Z+al5zM4JfngcazMy4WEf/XkPS5TEQjbD+DZ5iNuG6RrKQLa/HuX2SYzC3kQ==", "dev": true, "engines": { "node": ">=14.21.3" @@ -6055,9 +6083,9 @@ "dev": true }, "node_modules/tailwindcss": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz", - "integrity": "sha512-A0KgSkef7eE4Mf+nKJ83i75TMyq8HqY3qmFIJSWy8bNt0v1lG7jUcpGpoTFxAwYcWOphcTBLPPJg+bDfhDf52w==", + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.5.tgz", + "integrity": "sha512-5SEZU4J7pxZgSkv7FP1zY8i2TIAOooNZ1e/OGtxIEv6GltpoiXUqWvLy89+a10qYTB1N5Ifkuw9lqQkN9sscvA==", "dev": true, "dependencies": { "@alloc/quick-lru": "^5.2.0", @@ -6065,10 +6093,10 @@ "chokidar": "^3.5.3", "didyoumean": "^1.2.2", "dlv": "^1.1.3", - "fast-glob": "^3.2.12", + "fast-glob": "^3.3.0", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", - "jiti": "^1.18.2", + "jiti": "^1.19.1", "lilconfig": "^2.1.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", @@ -6193,33 +6221,24 @@ "node": ">=14" } }, - "node_modules/ts-interface-checker": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", - "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", - "dev": true - }, - "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "node_modules/ts-api-utils": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", + "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", "dev": true, - "dependencies": { - "tslib": "^1.8.1" - }, "engines": { - "node": ">= 6" + "node": ">=16.13.0" }, "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + "typescript": ">=4.2.0" } }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -6268,9 +6287,9 @@ } }, "node_modules/typescript": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", - "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", + "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", "devOptional": true, "bin": { "tsc": "bin/tsc", @@ -6301,6 +6320,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, "node_modules/universalify": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", @@ -6384,9 +6409,9 @@ } }, "node_modules/vite": { - "version": "4.4.10", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.10.tgz", - "integrity": "sha512-TzIjiqx9BEXF8yzYdF2NTf1kFFbjMjUSV0LFZ3HyHoI3SGSPLnnFUKiIQtL3gl2AjHvMrprOvQ3amzaHgQlAxw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz", + "integrity": "sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==", "dev": true, "dependencies": { "esbuild": "^0.18.10", @@ -6560,9 +6585,9 @@ } }, "node_modules/vue-component-type-helpers": { - "version": "1.8.4", - "resolved": "https://registry.npmjs.org/vue-component-type-helpers/-/vue-component-type-helpers-1.8.4.tgz", - "integrity": "sha512-6bnLkn8O0JJyiFSIF0EfCogzeqNXpnjJ0vW/SZzNHfe6sPx30lTtTXlE5TFs2qhJlAtDFybStVNpL73cPe3OMQ==", + "version": "1.8.22", + "resolved": "https://registry.npmjs.org/vue-component-type-helpers/-/vue-component-type-helpers-1.8.22.tgz", + "integrity": "sha512-LK3wJHs3vJxHG292C8cnsRusgyC5SEZDCzDCD01mdE/AoREFMl2tzLRuzwyuEsOIz13tqgBcnvysN3Lxsa14Fw==", "dev": true }, "node_modules/vue-draggable-next": { @@ -6651,9 +6676,9 @@ } }, "node_modules/vue-template-compiler": { - "version": "2.7.14", - "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.14.tgz", - "integrity": "sha512-zyA5Y3ArvVG0NacJDkkzJuPQDF8RFeRlzV2vLeSnhSpieO6LK2OVbdLPi5MPPs09Ii+gMO8nY4S3iKQxBxDmWQ==", + "version": "2.7.15", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.15.tgz", + "integrity": "sha512-yQxjxMptBL7UAog00O8sANud99C6wJF+7kgbcwqkvA38vCGF7HWE66w0ZFnS/kX5gSoJr/PQ4/oS3Ne2pW37Og==", "dev": true, "dependencies": { "de-indent": "^1.0.2", @@ -6661,14 +6686,14 @@ } }, "node_modules/vue-tsc": { - "version": "1.8.15", - "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.15.tgz", - "integrity": "sha512-4DoB3LUj7IToLmggoCxRiFG+QU5lem0nv03m1ocqugXA9rSVoTOEoYYaP8vu8b99Eh+/cCVdYOeIAQ+RsgUYUw==", + "version": "1.8.22", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.22.tgz", + "integrity": "sha512-j9P4kHtW6eEE08aS5McFZE/ivmipXy0JzrnTgbomfABMaVKx37kNBw//irL3+LlE3kOo63XpnRigyPC3w7+z+A==", "dev": true, "dependencies": { - "@vue/language-core": "1.8.15", - "@vue/typescript": "1.8.15", - "semver": "^7.3.8" + "@volar/typescript": "~1.10.5", + "@vue/language-core": "1.8.22", + "semver": "^7.5.4" }, "bin": { "vue-tsc": "bin/vue-tsc.js" @@ -6911,9 +6936,9 @@ "dev": true }, "node_modules/yaml": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.1.tgz", - "integrity": "sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", + "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", "dev": true, "engines": { "node": ">= 14" diff --git a/report-viewer/package.json b/report-viewer/package.json index 50e0c6016..33eb3a0d8 100644 --- a/report-viewer/package.json +++ b/report-viewer/package.json @@ -20,12 +20,12 @@ "@fortawesome/fontawesome-svg-core": "^6.4.2", "@fortawesome/free-regular-svg-icons": "^6.4.2", "@fortawesome/free-solid-svg-icons": "^6.4.2", - "@fortawesome/vue-fontawesome": "^3.0.3", + "@fortawesome/vue-fontawesome": "^3.0.5", "chart.js": "^4.4.0", "chartjs-plugin-datalabels": "^2.2.0", - "highlight.js": "^11.8.0", + "highlight.js": "^11.9.0", "jszip": "^3.10.0", - "pinia": "^2.1.6", + "pinia": "^2.1.7", "slash": "^5.1.0", "vue": "^3.3.4", "vue-chartjs": "^5.2.0", @@ -34,29 +34,29 @@ "vue-virtual-scroller": "^2.0.0-beta.8" }, "devDependencies": { - "@playwright/test": "^1.38.1", - "@rushstack/eslint-patch": "^1.4.0", - "@types/jsdom": "^21.1.3", - "@types/node": "^18.18.0", - "@vitejs/plugin-vue": "^4.4.0", + "@playwright/test": "^1.39.0", + "@rushstack/eslint-patch": "^1.6.0", + "@types/jsdom": "^21.1.6", + "@types/node": "^18.18.9", + "@vitejs/plugin-vue": "^4.4.1", "@vue/eslint-config-prettier": "^8.0.0", - "@vue/eslint-config-typescript": "^11.0.3", - "@vue/test-utils": "^2.4.1", + "@vue/eslint-config-typescript": "^12.0.0", + "@vue/test-utils": "^2.4.2", "@vue/tsconfig": "^0.4.0", - "autoprefixer": "^10.4.15", - "eslint": "^8.50.0", - "eslint-plugin-vue": "^9.17.0", + "autoprefixer": "^10.4.16", + "eslint": "^8.54.0", + "eslint-plugin-vue": "^9.18.1", "husky": "^8.0.0", "jsdom": "^22.1.0", - "lint-staged": "^14.0.1", + "lint-staged": "^15.1.0", "npm-run-all": "^4.1.5", "postcss": "^8.4.31", - "prettier": "^3.0.3", - "prettier-plugin-tailwindcss": "^0.5.5", - "tailwindcss": "^3.3.3", - "typescript": "^5.2.2", - "vite": "^4.4.10", + "prettier": "^3.1.0", + "prettier-plugin-tailwindcss": "^0.5.7", + "tailwindcss": "^3.3.5", + "typescript": "^5.3.2", + "vite": "^4.5.0", "vitest": "^0.34.6", - "vue-tsc": "^1.8.15" + "vue-tsc": "^1.8.22" } } diff --git a/report-viewer/src/components/CodePanel.vue b/report-viewer/src/components/CodePanel.vue index c057ae5a6..47edaf420 100644 --- a/report-viewer/src/components/CodePanel.vue +++ b/report-viewer/src/components/CodePanel.vue @@ -28,7 +28,10 @@

@@ -52,6 +55,7 @@ import type { Match } from '@/model/Match'
 import type { SubmissionFile } from '@/stores/state'
 import { highlight } from '@/utils/CodeHighlighter'
 import type { HighlightLanguage } from '@/model/Language'
+import { getMatchColor } from '@/utils/ColorUtils'
 
 const props = defineProps({
   /**
diff --git a/report-viewer/src/components/MatchList.vue b/report-viewer/src/components/MatchList.vue
index 17e5bee28..5efa9bd91 100644
--- a/report-viewer/src/components/MatchList.vue
+++ b/report-viewer/src/components/MatchList.vue
@@ -14,8 +14,8 @@
 
     
- {{ anonymousLabel ? 'Hidden' : label }}: - - Hidden + + + +
diff --git a/report-viewer/src/components/ToolTipComponent.vue b/report-viewer/src/components/ToolTipComponent.vue index 48212c0f5..04f63e0a1 100644 --- a/report-viewer/src/components/ToolTipComponent.vue +++ b/report-viewer/src/components/ToolTipComponent.vue @@ -6,7 +6,9 @@ :style="tooltipPosition" > -
+
+ +
diff --git a/report-viewer/src/components/VersionInfoComponent.vue b/report-viewer/src/components/VersionInfoComponent.vue index 0d056d077..4961bb501 100644 --- a/report-viewer/src/components/VersionInfoComponent.vue +++ b/report-viewer/src/components/VersionInfoComponent.vue @@ -5,29 +5,32 @@ You are using a development version of the JPlag Report Viewer. -
- You are using an outdated version of the JPlag Report Viewer ({{ - reportViewerVersion.toString() - }}).
- Version {{ newestVersion.toString() }} is available on - GitHub. -
+
+
+ You are using an outdated version of the JPlag Report Viewer ({{ + reportViewerVersion.toString() + }}).
+ Version {{ newestVersion.toString() }} is available on + GitHub. +
+ +
JPlag v{{ reportViewerVersion.toString() }}
-
JPlag v{{ reportViewerVersion.toString() }}
+
+ The minimal version of JPlag that is supported by the viewer is v{{ + minimalReportVersion.toString() + }}. +
+
diff --git a/report-viewer/src/viewWrapper/ComparisonViewWrapper.vue b/report-viewer/src/viewWrapper/ComparisonViewWrapper.vue index 96395207b..aa5b2eed4 100644 --- a/report-viewer/src/viewWrapper/ComparisonViewWrapper.vue +++ b/report-viewer/src/viewWrapper/ComparisonViewWrapper.vue @@ -22,6 +22,7 @@ import { getHighlightLanguage, type HighlightLanguage } from '@/model/Language' import type { Comparison } from '@/model/Comparison' import { ComparisonFactory } from '@/model/factories/ComparisonFactory' import LoadingCircle from '@/components/LoadingCircle.vue' +import { redirectOnError } from '@/router' const props = defineProps({ firstId: { @@ -39,11 +40,19 @@ const language: Ref = ref(null) // This eslint rule is disabled to allow the use of await in the setup function. Disabling this rule is safe, because the props are gathered from the url, so changing them would reload the pafe anyway. // eslint-disable-next-line vue/no-setup-props-reactivity-loss -ComparisonFactory.getComparison(props.firstId, props.secondId).then((comp) => { - comparison.value = comp -}) +ComparisonFactory.getComparison(props.firstId, props.secondId) + .then((comp) => { + comparison.value = comp + }) + .catch((error) => { + redirectOnError(error, 'Could not load comparison:\n', 'OverviewView', 'Back to overview') + }) -OverviewFactory.getOverview().then((overview) => { - language.value = getHighlightLanguage(overview.language) -}) +OverviewFactory.getOverview() + .then((overview) => { + language.value = getHighlightLanguage(overview.language) + }) + .catch((error) => { + redirectOnError(error, 'Could not load coparison:\n') + }) diff --git a/report-viewer/src/viewWrapper/InformationViewWrapper.vue b/report-viewer/src/viewWrapper/InformationViewWrapper.vue index 6354e8630..e62021a82 100644 --- a/report-viewer/src/viewWrapper/InformationViewWrapper.vue +++ b/report-viewer/src/viewWrapper/InformationViewWrapper.vue @@ -14,10 +14,15 @@ import { OverviewFactory } from '@/model/factories/OverviewFactory' import InformationView from '@/views/InformationView.vue' import type { Overview } from '@/model/Overview' import LoadingCircle from '@/components/LoadingCircle.vue' +import { redirectOnError } from '@/router' const overview: Ref = ref(null) -OverviewFactory.getOverview().then((o) => { - overview.value = o -}) +OverviewFactory.getOverview() + .then((o) => { + overview.value = o + }) + .catch((error) => { + redirectOnError(error, 'Could not load information:\n', 'OverviewView', 'Back to overview') + }) diff --git a/report-viewer/src/viewWrapper/OverviewViewWrapper.vue b/report-viewer/src/viewWrapper/OverviewViewWrapper.vue index c7c4f07d3..08c5cd0c3 100644 --- a/report-viewer/src/viewWrapper/OverviewViewWrapper.vue +++ b/report-viewer/src/viewWrapper/OverviewViewWrapper.vue @@ -14,10 +14,15 @@ import { OverviewFactory } from '@/model/factories/OverviewFactory' import OverviewView from '@/views/OverviewView.vue' import type { Overview } from '@/model/Overview' import LoadingCircle from '@/components/LoadingCircle.vue' +import { redirectOnError } from '@/router' const overview: Ref = ref(null) -OverviewFactory.getOverview().then((o) => { - overview.value = o -}) +OverviewFactory.getOverview() + .then((o) => { + overview.value = o + }) + .catch((error) => { + redirectOnError(error, 'Could not load overview:\n') + }) diff --git a/report-viewer/src/views/ClusterView.vue b/report-viewer/src/views/ClusterView.vue index 2a6df5a51..e5984b199 100644 --- a/report-viewer/src/views/ClusterView.vue +++ b/report-viewer/src/views/ClusterView.vue @@ -40,7 +40,8 @@ import type { ClusterListElement, ClusterListElementMember } from '@/model/Clust import type { ComparisonListElement } from '@/model/ComparisonListElement' import { MetricType } from '@/model/MetricType' import type { Overview } from '@/model/Overview' -import { computed, type PropType, type Ref } from 'vue' +import { redirectOnError } from '@/router' +import { computed, onErrorCaptured, type PropType, type Ref } from 'vue' const props = defineProps({ overview: { @@ -106,4 +107,9 @@ const clusterListElement: Ref = computed(() => { const maxAmountOfComparisonsInCluster = computed(() => { return props.cluster.members.length ** 2 / 2 - props.cluster.members.length }) + +onErrorCaptured((error) => { + redirectOnError(error, 'Error displaying cluster:\n', 'OverviewView', 'Back to overview') + return false +}) diff --git a/report-viewer/src/views/ComparisonView.vue b/report-viewer/src/views/ComparisonView.vue index a50bd1746..f37076acc 100644 --- a/report-viewer/src/views/ComparisonView.vue +++ b/report-viewer/src/views/ComparisonView.vue @@ -67,7 +67,7 @@ diff --git a/report-viewer/src/views/ErrorView.vue b/report-viewer/src/views/ErrorView.vue index d9e010720..99e284591 100644 --- a/report-viewer/src/views/ErrorView.vue +++ b/report-viewer/src/views/ErrorView.vue @@ -1,15 +1,15 @@ - - +onErrorCaptured((error) => { + registerError(error, 'unknown') + return false +}) + diff --git a/report-viewer/src/views/InformationView.vue b/report-viewer/src/views/InformationView.vue index b55a73cc7..e7ff2bc1c 100644 --- a/report-viewer/src/views/InformationView.vue +++ b/report-viewer/src/views/InformationView.vue @@ -4,17 +4,17 @@

Run Options:

- {{ + {{ overview.submissionFolderPath.join(', ') }} - {{ + {{ overview.baseCodeFolderPath }} {{ overview.language }} {{ overview.fileExtensions.join(', ') }} - {{ + {{ overview.matchSensitivity }} @@ -30,17 +30,17 @@ {{ overview.durationOfExecution }} ms - {{ + {{ store().getSubmissionIds.length }} {{ - totalComparisons + overview.totalComparisons }} {{ - shownComparisons + overview.shownComparisons }} {{ - missingComparisons + overview.missingComparisons }} @@ -53,16 +53,18 @@ import TextInformation from '@/components/TextInformation.vue' import ScrollableComponent from '@/components/ScrollableComponent.vue' import { store } from '@/stores/store' import { Overview } from '@/model/Overview' -import { computed, type PropType } from 'vue' +import { onErrorCaptured, type PropType } from 'vue' +import { redirectOnError } from '@/router' -const props = defineProps({ +defineProps({ overview: { type: Object as PropType, required: true } }) -const totalComparisons = computed(() => props.overview.totalComparisons) -const shownComparisons = computed(() => props.overview.topComparisons.length) -const missingComparisons = computed(() => totalComparisons.value - shownComparisons.value) +onErrorCaptured((error) => { + redirectOnError(error, 'Error displaying information:\n', 'OverviewView', 'Back to overview') + return false +}) diff --git a/report-viewer/src/views/OverviewView.vue b/report-viewer/src/views/OverviewView.vue index 149c612ff..14d9eb7f3 100644 --- a/report-viewer/src/views/OverviewView.vue +++ b/report-viewer/src/views/OverviewView.vue @@ -7,16 +7,50 @@

JPlag Report

- {{ submissionPathValue }} + {{ submissionPathValue }} {{ store().getSubmissionIds.length }} - {{ - overview.totalComparisons - }} - {{ - overview.matchSensitivity - }} + + + + + + + + + + diff --git a/report-viewer/tests/unit/components/VersionInfoComponent.test.ts b/report-viewer/tests/unit/components/VersionInfoComponent.test.ts index e27c4c563..ffcbabab2 100644 --- a/report-viewer/tests/unit/components/VersionInfoComponent.test.ts +++ b/report-viewer/tests/unit/components/VersionInfoComponent.test.ts @@ -1,39 +1,50 @@ import VersionInfoComponent from '@/components/VersionInfoComponent.vue' import { flushPromises, mount } from '@vue/test-utils' -import { describe, it, vi, expect } from 'vitest' -import version from '@/version.json' - -vi.mock('@/version.json') +import { describe, it, vi, expect, beforeAll } from 'vitest' +import * as versionTsFile from '@/model/Version' +import { Version } from '@/model/Version' describe('VersionInfoComponent', () => { it('Render develop version', async () => { - version.report_viewer_version = mockVersionJSON(0, 0, 0) + vi.spyOn(versionTsFile, 'reportViewerVersion', 'get').mockReturnValue(mockVersionJSON(0, 0, 0)) + vi.spyOn(versionTsFile, 'minimalReportVersion', 'get').mockReturnValue(mockVersionJSON(4, 0, 0)) global.fetch = vi.fn().mockResolvedValueOnce(mockVersionResponse('v4.3.0')) const wrapper = mount(VersionInfoComponent) await flushPromises() expect(wrapper.text()).toContain('development version') + expect(wrapper.text()).not.toContain( + 'The minimal version of JPlag that is supported by the viewer is v4.0.0.' + ) }) it('Render outdated version', async () => { - version.report_viewer_version = mockVersionJSON(4, 3, 0) + vi.spyOn(versionTsFile, 'reportViewerVersion', 'get').mockReturnValue(mockVersionJSON(4, 3, 0)) + vi.spyOn(versionTsFile, 'minimalReportVersion', 'get').mockReturnValue(mockVersionJSON(4, 0, 0)) global.fetch = vi.fn().mockResolvedValueOnce(mockVersionResponse('v4.4.0')) const wrapper = mount(VersionInfoComponent) await flushPromises() expect(wrapper.text()).toContain('outdated version') + expect(wrapper.text()).toContain( + 'The minimal version of JPlag that is supported by the viewer is v4.0.0.' + ) }) it('Render latest version', async () => { - version.report_viewer_version = mockVersionJSON(4, 3, 0) + vi.spyOn(versionTsFile, 'reportViewerVersion', 'get').mockReturnValue(mockVersionJSON(4, 3, 0)) + vi.spyOn(versionTsFile, 'minimalReportVersion', 'get').mockReturnValue(mockVersionJSON(4, 0, 0)) global.fetch = vi.fn().mockResolvedValueOnce(mockVersionResponse('v4.3.0')) const wrapper = mount(VersionInfoComponent) await flushPromises() expect(wrapper.text()).toContain('JPlag v4.3.0') + expect(wrapper.text()).toContain( + 'The minimal version of JPlag that is supported by the viewer is v4.0.0.' + ) }) }) @@ -47,9 +58,5 @@ function mockVersionResponse(version: string) { } function mockVersionJSON(major: number, minor: number, patch: number) { - return { - major: major, - minor: minor, - patch: patch - } + return new Version(major, minor, patch) } diff --git a/report-viewer/tests/unit/model/factories/OutdatedOverview.json b/report-viewer/tests/unit/model/factories/OutdatedOverview.json new file mode 100644 index 000000000..cf9583658 --- /dev/null +++ b/report-viewer/tests/unit/model/factories/OutdatedOverview.json @@ -0,0 +1,73 @@ +{ + "jplag_version": { "major": 3, "minor": 0, "patch": 0 }, + "submission_folder_path": ["files"], + "base_code_folder_path": "", + "language": "Javac based AST plugin", + "file_extensions": [".java", ".JAVA"], + "submission_id_to_display_name": { "A": "A", "B": "B", "C": "C", "D": "D" }, + "submission_ids_to_comparison_file_name": { + "A": { "B": "B-A.json", "C": "A-C.json", "D": "D-A.json" }, + "B": { "A": "B-A.json", "C": "B-C.json", "D": "B-D.json" }, + "C": { "A": "A-C.json", "B": "B-C.json", "D": "D-C.json" }, + "D": { "A": "D-A.json", "B": "B-D.json", "C": "D-C.json" } + }, + "failed_submission_names": [], + "excluded_files": [], + "match_sensitivity": 9, + "date_of_execution": "12/07/23", + "execution_time": 12, + "distributions": { + "MAX": [ + 1, 0, 2, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0 + ], + "AVG": [ + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0 + ] + }, + "top_comparisons": [ + { + "first_submission": "A", + "second_submission": "C", + "similarities": { "AVG": 0.9960435212660732, "MAX": 0.9960435212660732 } + }, + { + "first_submission": "D", + "second_submission": "A", + "similarities": { "AVG": 0.751044776119403, "MAX": 0.947289156626506 } + }, + { + "first_submission": "D", + "second_submission": "C", + "similarities": { "AVG": 0.751044776119403, "MAX": 0.947289156626506 } + }, + { + "first_submission": "B", + "second_submission": "D", + "similarities": { "AVG": 0.28322981366459626, "MAX": 0.8085106382978723 } + }, + { + "first_submission": "B", + "second_submission": "A", + "similarities": { "AVG": 0.2378472222222222, "MAX": 0.9716312056737588 } + }, + { + "first_submission": "B", + "second_submission": "C", + "similarities": { "AVG": 0.2378472222222222, "MAX": 0.9716312056737588 } + } + ], + "clusters": [ + { + "average_similarity": 94.746956, + "strength": 0.0, + "members": ["C", "A", "B", "D"] + } + ], + "total_comparisons": 6 +} diff --git a/report-viewer/tests/unit/model/factories/OverviewFactory.test.ts b/report-viewer/tests/unit/model/factories/OverviewFactory.test.ts index f2602f3c1..f441931c9 100644 --- a/report-viewer/tests/unit/model/factories/OverviewFactory.test.ts +++ b/report-viewer/tests/unit/model/factories/OverviewFactory.test.ts @@ -5,6 +5,7 @@ import { HundredValueDistribution } from '@/model/HundredValueDistribution' import { TenValueDistribution } from '@/model/TenValueDistribution' import validNew from './ValidNewOverview.json' import validOld from './ValidOldOverview.json' +import outdated from './OutdatedOverview.json' const store = { state: { @@ -175,3 +176,10 @@ describe('Test JSON to Overview', () => { }) }) }) + +describe('Outdated JSON to Overview', () => { + it('Outdated version', async () => { + store.state.files['overview.json'] = JSON.stringify(outdated) + expect(() => OverviewFactory.getOverview()).rejects.toThrowError() + }) +}) diff --git a/report-viewer/tests/unit/model/factories/ValidNewOverview.json b/report-viewer/tests/unit/model/factories/ValidNewOverview.json index 37e23f777..2deb439ba 100644 --- a/report-viewer/tests/unit/model/factories/ValidNewOverview.json +++ b/report-viewer/tests/unit/model/factories/ValidNewOverview.json @@ -1,5 +1,5 @@ { - "jplag_version": { "major": 0, "minor": 0, "patch": 0 }, + "jplag_version": { "major": 4, "minor": 0, "patch": 0 }, "submission_folder_path": ["files"], "base_code_folder_path": "", "language": "Javac based AST plugin",