((x, y) => x.min - y.min);
  }

  /**
   * Generates the set of time intervals that metrics should be run over.
   * Time intervals include each UE (for UE-based metrics), the whole
   * story (for the full-story metric), etc. Each time interval is given
   * in the following form:
   *
   *   {
   *     bounds {tr.b.math.Range}: Boundaries of the time interval.
   *     name {string}: Name of this interval. Used to generate the
   *       metric names.
   *     description {string}: Human readable descript