code: public HString trimLeft(@NonNull Predicate<? super Annotation> toTrimPredicate) {
        int start = 0;
        while (start < tokenLength() && toTrimPredicate.test(tokenAt(start))) {
           start++;
        }
        if (start < tokenLength()) {
           return tokenAt(start).union(tokenAt(tokenLength() - 1));
        }
        return Fragments.empty(document());
     }
docs: Trims tokens off the left of this HString that match the given predicate.
  
  @param toTrimPredicate the predicate to use to determine if a token should be removed (evaulate to TRUE) or kept
  (evaluate to FALSE).
  @return the trimmed HString