static parse(
      cuesData, initData, uris, initSegmentReference, timestampOffset,
      appendWindowStart, appendWindowEnd) {
    const tuple =
        shaka.dash.WebmSegmentIndexParser.parseWebmContainer_(initData);
    const parser = new shaka.dash.EbmlParser(cuesData);
    const cuesElement = parser.parseElement();
    if (cuesElement.id != shaka.dash.WebmSegmentIndexParser.CUES_ID) {
      shaka.log.error('Not a Cues element.');
      throw new shaka.util.Error(
          shaka.util.Error.Severity.CRITICAL,
          shaka.util.Error.Category.MEDIA,
          shaka.util.Error.Code.WEBM_CUES_ELEMENT_MISSING);
    }

    return shaka.dash.WebmSegmentIndexParser.parseCues_(
        cuesElement, tuple.segmentOffset, tuple.timecodeScale, tuple.duration,
        uris, initSegmentReference, timestampOffset, appendWindowStart,
        appendWindowEnd);
  }
Parses SegmentReferences from a WebM container.
@param {BufferSource} cuesData The WebM container's "Cueing Data" section.
@param {BufferSource} initData The WebM container's headers.
@param {!Array<string>} uris The possible locations of the WebM file that
  contains the segments.
@param {shaka.media.InitSegmentReference} initSegmentReference
@param {number} timestampOffset
@param {number} appendWindowStart
@param {number} appendWindowEnd
@return {!Array<!shaka.media.SegmentReference>}
@see http://www.matroska.org/technical/specs/index.html
@see http://www.webmproject.org/docs/container/