code: private boolean toBoundedPrevious() throws FetchException {
          if (!toPrevious()) {
              return false;
          }
  
          if (mStartBound != null) {
              byte[] currentKey = getCurrentKey();
              if (currentKey == null) {
                  return false;
              }
              int result = compareKeysPartially(currentKey, mStartBound);
              if (result <= 0) {
                  if (result < 0 || !mInclusiveStart) {
                      // Too far now, reset to first.
                      toBoundedFirst();
                      return false;
                  }
              }
          }
  
          return prefixMatches();
      }
docs: Calls toPrevious, but considers start bound.