code: func (s *Scheme) SetVersionPriority(versions ...schema.GroupVersion) error {
  	groups := sets.String{}
  	order := []string{}
  	for _, version := range versions {
  		if len(version.Version) == 0 || version.Version == APIVersionInternal {
  			return fmt.Errorf("internal versions cannot be prioritized: %v", version)
  		}
  
  		groups.Insert(version.Group)
  		order = append(order, version.Version)
  	}
  	if len(groups) != 1 {
  		return fmt.Errorf("must register versions for exactly one group: %v", strings.Join(groups.List(), ", "))
  	}
  
  	s.versionPriority[groups.List()[0]] = order
  	return nil
  }
docs: // SetVersionPriority allows specifying a precise order of priority. All specified versions must be in the same group,
  // and the specified order overwrites any previously specified order for this group