code: @Override
    public P build() {
      try {
        return buildAsync().join();
      } catch (Exception e) {
        if (e instanceof CompletionException && e.getCause() instanceof RuntimeException) {
          throw (RuntimeException) e.getCause();
        } else {
          throw e;
        }
      }
    }
docs: Builds a new instance of the primitive.
  <p>
  The returned instance will be distinct from all other instances of the same primitive on this node, with a
  distinct session, ordering guarantees, memory, etc.
  
  @return a new instance of the primitive