code: public CompletableFuture<ByteArraySegment> get(@NonNull ByteArraySegment key, @NonNull Duration timeout) {
          ensureInitialized();
          TimeoutTimer timer = new TimeoutTimer(timeout);
  
          // Lookup the page where the Key should exist (if at all).
          PageCollection pageCollection = new PageCollection(this.state.get().length);
          return locatePage(key, pageCollection, timer)
                  .thenApplyAsync(page -> page.getPage().searchExact(key), this.executor);
      }
docs: Looks up the value of a single key.
  
  @param key     A ByteArraySegment representing the key to look up.
  @param timeout Timeout for the operation.
  @return A CompletableFuture that, when completed normally, will contain the value associated with the given key.
  If no value is associated with this key, the Future will complete with null. If the operation failed, the Future
  will be completed with the appropriate exception.