tart and
      // end mark names contain a GUID so they are unique.
      return this.endMark.startTime - this.startMark.startTime;
    }

    end(opt_timestamp) {
      if (tr.isHeadless) return;

      if (opt_timestamp) {
        this.endMark_ = {startTime: opt_timestamp};
      } else {
        window.performance.mark(this.endMarkName_);
      }

      if (!this.startMark_ && !this.endMark_) {
        window.performance.measure(
            this.measureName_, this.startMarkName_, this.endMarkName_);
   