code: func (tr Ranges) clone() Ranges {
  	res := Ranges{sortedRanges: list.New()}
  	if tr.sortedRanges == nil {
  		return res
  	}
  	for e := tr.sortedRanges.Front(); e != nil; e = e.Next() {
  		res.sortedRanges.PushBack(e.Value.(Range))
  	}
  	return res
  }
docs: // clone returns a copy of the time ranges.