### Question:
OverlapProc extends AlphaSimilarityProc<OverlapAlgorithm, OverlapConfig> { @Procedure(name = "gds.alpha.similarity.overlap.stream", mode = READ) @Description(DESCRIPTION) public Stream<SimilarityResult> overlapStream( @Name(value = "graphName") Object graphNameOrConfig, @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration ) { return stream(graphNameOrConfig, configuration); }  @Procedure(name = "gds.alpha.similarity.overlap.stream", mode = READ) @Description(DESCRIPTION) Stream<SimilarityResult> overlapStream(
        @Name(value = "graphName") Object graphNameOrConfig,
        @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration
    ); @Procedure(name = "gds.alpha.similarity.overlap.write", mode = WRITE) @Description(DESCRIPTION) Stream<SimilaritySummaryResult> overlapWrite(
        @Name(value = "graphName") Object graphNameOrConfig,
        @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration
    ); @Procedure(name = "gds.alpha.similarity.overlap.stats", mode = READ) @Description(DESCRIPTION) Stream<SimilarityStatsResult> overlapStats(
        @Name(value = "graphName") Object graphNameOrConfig,
        @Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration
    );  }### Answer:
@Test void overlapStreamTest() { runQueryWithResultConsumer(STATEMENT_STREAM, map("config", map("concurrency", 1)), results -> { assertTrue(results.hasNext()); assert10(results.next()); assert20(results.next()); assert12(results.next()); assertFalse(results.hasNext()); }); }