docs: def parseBEDString(line, scoreType=int, dropAfter=None):
    """
    Parse a string in BED format and return a GenomicInterval object.
  
    :param line: the string to be parsed
    :param dropAfter: an int indicating that any fields after and including
                      this field should be ignored as they don't conform to
                      the BED format. By default, None, meaning we use all
                      fields. Index from zero.
    :return: GenomicInterval object built from the BED string representation
    """
    peices = line.split("\t")
    if dropAfter is not None:
      peices = peices[0:dropAfter]
    if len(peices) < 3:
      raise GenomicIntervalError("BED elements must have at least chrom, " +
                                 "start and end; found only " +
                                 str(len(peices)) + " in " + line)
    chrom = peices[0]
    start = peices[1]
    end = peices[2]
  
    name = None
    score = None
    strand = None
  
    if len(peices) >= 4 is not None:
      name = peices[3]
    if len(peices) >= 5 is not None:
      score = peices[4]
    if len(peices) >= 6 is not None:
      strand = peices[5]
  
    return GenomicInterval(chrom, start, end, name, score, strand, scoreType)