code: func (v *Version) WithMajor(major uint) *Version {
  	result := *v
  	result.components = []uint{major, v.Minor(), v.Patch()}
  	return &result
  }
docs: // WithMajor returns copy of the version object with requested major number