code: func (ps *PointSet) InsertAt(index int, point *Point) *PointSet {
  	deref := *ps
  	if index > len(deref) || index < 0 {
  		panic(fmt.Sprintf("geo: insert index out of range, requested: %d, length: %d", index, len(deref)))
  	}
  
  	if index == len(deref) {
  		deref = append(deref, *point)
  		*ps = deref
  		return ps
  	}
  
  	deref = append(deref, Point{})
  	copy(deref[index+1:], deref[index:])
  	deref[index] = *point
  	*ps = deref
  	return ps
  }
docs: // InsertAt inserts a Point at i in the point set.
  // Panics if index is out of range.