anchor.diff:    </dependency>
     <dependency>
       <groupId>{project-group}</groupId>
  -    <artifactId>memoization-${kind}</artifactId>
  -    <version>${version.memoization}</version>
  +    <artifactId>memoization-guava</artifactId>
  +    <version>${version.memoization}</version>
  +  </dependency>
  +
  +  <dependency>
  +    <groupId>com.google.guava</groupId>
  +    <artifactId>guava</artifactId>
  +    <version>${version.guava}</version>
     </dependency>
   </dependencies>
   ----
   
  -Replace `${kind}` with one of the available implementations (*map*, *guava*, *caffeine*, *jsr107*). Replace `${version.memoization}` with the pass:[<a href="https://search.maven.org/#search%7Cga%7C1%7Cg%3Ade.xn--ho-hia.memoization">latest release</a>]. This project follows the link:http://semver.org/[semantic versioning guidelines].
  +==== JSR107
  +
  +[source, xml, subs="attributes,verbatim"]
  +----
  +<dependencies>
  +  <dependency>
  +    <groupId>{project-group}</groupId>
  +    <artifactId>memoization-shared</artifactId>
  +    <version>${version.memoization}</version>
  +  </dependency>
  +  <dependency>
  +    <groupId>{project-group}</groupId>
  +    <artifactId>memoization-jsr107</artifactId>
  +    <version>${version.memoization}</version>
  +  </dependency>
  +
  +  <dependency>
  +    <groupId>javax.cache</groupId>
  +    <artifactId>cache-api</artifactId>
  +    <version>1.0.0</version>
  +  </dependency>
  +  <!-- Add your JCache implementation here -->
  +  <dependency>
  +    <groupId>...</groupId>
  +    <artifactId>...</artifactId>
  +    <version>...</version>
  +  </dependency>
  +</dependencies>
  +----
  +
  +==== Map
  +
  +[source, xml, subs="attributes,verbatim"]
  +----
  +<dependencies>
  +  <dependency>
  +    <groupId>{project-group}</groupId>
  +    <artifactId>memoization-shared</artifactId>
  +    <version>${version.memoization}</version>
  +  </dependency>
  +  <dependency>
  +    <groupId>{project-group}</groupId>
  +    <artifactId>memoization-map</artifactId>
  +    <version>${version.memoization}</version>
  +  </dependency>
  +</dependencies>
  +----
   
   === Compatibility
   
  
positive.code: 
  === Integration
  
  This project is split into multiple modules in order to offer the least amount of dependencies to import for any given consumer project. In order to use this project, declare the following inside your POM. The `memoization-shared` module is not strictly necessary as it gets pulled in transitively by any of `memoization-${kind}`, however in general it is good practive to include all of your direct dependencies.
  
  [source, xml, subs="attributes,verbatim"]
  ----
  
negative.code: * Memoize calls to `Supplier`, `Function`, `BiFunction`, `Consumer` and all other functional interfaces in `java.util.function`
  * link:{jdk-api}/java/util/concurrent/ConcurrentHashMap.html[`ConcurrentHashMap`] based implementation
  * [WIP]: link:https://github.com/ben-manes/caffeine[Caffeine] based implementation
  * link:https://github.com/google/guava/wiki/CachesExplained[Guava] based implementation
  * link:https://jcp.org/en/jsr/detail?id=107[JSR107] based implementation
  
  .Coverage of `java.util.function`
  |===
  