odel.Thread} mainThread
  * @param  {!tr.b.math.Range} rangeOfInterest
  * @callback {getEventAttributeCallback} getEventSelfTime
  * @return {Object.<string, Object>} A time breakdown object whose keys are
  * Chrome userfriendly title & values are an object that show the total spent
  * in |rangeOfInterest|, and the list of event labels of the
  * group and their total time in |rangeOfInterest|.
  *
  * Example:
  *   {
  *     layout: {
  *         total: 100,
  *         events: {'FrameView::performPreL