docs: private static synchronized PrepPipeline createOrFindPreparer(DatabasePreparer preparer, Iterable<Consumer<Builder>> customizers) throws IOException, SQLException
      {
          final ClusterKey key = new ClusterKey(preparer, customizers);
          PrepPipeline result = CLUSTERS.get(key);
          if (result != null) {
              return result;
          }
  
          final Builder builder = EmbeddedPostgres.builder();
          customizers.forEach(c -> c.accept(builder));
          final EmbeddedPostgres pg = builder.start();
          preparer.prepare(pg.getTemplateDatabase());
  
          result = new PrepPipeline(pg).start();
          CLUSTERS.put(key, result);
          return result;
      }