See #17798
'getProfilingData() called before any profiling data was recorded',
      );
    }
    rootToCommitProfilingMetadataMap.forEach(
      (commitProfilingMetadata, rootID) => {
        const commitData: Array<CommitDataBackend> = [];
        const initialTreeBaseDurations: Array<[number, number]> = [];
        const allInteractions: Map<number, Interaction> = new Map();
        const interactionCommits: Map<number, Array<number>> = new Map();
        const displayName =
          (displayNamesByRootID !== null && displayNamesByRootID.get(rootID)) ||
          'Unknown';
        if (initialTreeBaseDurationsMap != null) {
          initialTreeBaseDurationsMap.forEach((treeBaseDuration, id) => {
            if (
              initialIDToRootMap != null &&
              initialIDToRootMap.get(id) === rootID
            ) {
               W
               b
              initialTreeBaseDurations.push([id, treeBaseDuration]);
            }
          });
        }
        commitProfilingMetadata.forEach((commitProfilingData, commitIndex) => {
          const {
            changeDescriptions,
            durations,
            interactions,
            maxActualDuration,