code: func (l *Line) Side(p *Point) int {
  	val := (l.b[0]-l.a[0])*(p[1]-l.b[1]) - (l.b[1]-l.a[1])*(p[0]-l.b[0])
  
  	if val < 0 {
  		return 1 // right
  	} else if val > 0 {
  		return -1 // left
  	}
  
  	return 0 // collinear
  }
docs: // Side returns 1 if the point is on the right side, -1 if on the left side, and 0 if collinear.