code: func mergeContainerResources(container *api.Container, defaultRequirements *api.ResourceRequirements, annotationPrefix string, annotations []string) []string {
  	setRequests := []string{}
  	setLimits := []string{}
  	if container.Resources.Limits == nil {
  		container.Resources.Limits = api.ResourceList{}
  	}
  	if container.Resources.Requests == nil {
  		container.Resources.Requests = api.ResourceList{}
  	}
  	for k, v := range defaultRequirements.Limits {
  		_, found := container.Resources.Limits[k]
  		if !found {
  			container.Resources.Limits[k] = *v.Copy()
  			setLimits = append(setLimits, string(k))
  		}
  	}
  	for k, v := range defaultRequirements.Requests {
  		_, found := container.Resources.Requests[k]
  		if !found {
  			container.Resources.Requests[k] = *v.Copy()
  			setRequests = append(setRequests, string(k))
  		}
  	}
  	if len(setRequests) > 0 {
  		sort.Strings(setRequests)
  		a := strings.Join(setRequests, ", ") + fmt.Sprintf(" request for %s %s", annotationPrefix, container.Name)
  		annotations = append(annotations, a)
  	}
  	if len(setLimits) > 0 {
  		sort.Strings(setLimits)
  		a := strings.Join(setLimits, ", ") + fmt.Sprintf(" limit for %s %s", annotationPrefix, container.Name)
  		annotations = append(annotations, a)
  	}
  	return annotations
  }
docs: // mergeContainerResources handles defaulting all of the resources on a container.