private void throwShouldBePresentErrorWithCauseIfPresent(
     final Throwable timeout, final String defaultMessage) {
   String timeoutMessage =
       (timeout.getCause() != null) ? timeout.getCause().getMessage() : timeout.getMessage();
   String finalMessage =
       (StringUtils.isNotEmpty(timeoutMessage)) ? timeoutMessage : defaultMessage;
   throw new ElementShouldBePresentException(finalMessage, timeout);
 }