code: private StackTraceElement[] concatWithJavaStackTrace(StackTraceElement[] javaStackTrace) {
      if (soyStackTrace.isEmpty()) {
        return javaStackTrace;
      }
  
      StackTraceElement[] finalStackTrace =
          new StackTraceElement[soyStackTrace.size() + javaStackTrace.length];
      soyStackTrace.toArray(finalStackTrace);
      System.arraycopy(
          javaStackTrace, 0, finalStackTrace, soyStackTrace.size(), javaStackTrace.length);
      return finalStackTrace;
    }
docs: Prepend the soy stack trace to the given standard java stack trace.
  
  @param javaStackTrace The java stack trace to prepend. This should come from
  Throwable#getStackTrace()
  @return The combined stack trace to use. Callers should call Throwable#setStackTrace() to
  override another Throwable's stack trace.