code: func getCommonGroupVersionKind(recorded, local, remote map[string]interface{}) (schema.GroupVersionKind, error) {
  	recordedGVK, err := getGroupVersionKind(recorded)
  	if err != nil {
  		return schema.GroupVersionKind{}, err
  	}
  	localGVK, err := getGroupVersionKind(local)
  	if err != nil {
  		return schema.GroupVersionKind{}, err
  	}
  	remoteGVK, err := getGroupVersionKind(remote)
  	if err != nil {
  		return schema.GroupVersionKind{}, err
  	}
  
  	if !reflect.DeepEqual(recordedGVK, localGVK) || !reflect.DeepEqual(localGVK, remoteGVK) {
  		return schema.GroupVersionKind{},
  			fmt.Errorf("group version kinds do not match (recorded: %v local: %v remote: %v)",
  				recordedGVK, localGVK, remoteGVK)
  	}
  	return recordedGVK, nil
  }
docs: // getCommonGroupVersionKind verifies that the recorded, local and remote all share
  // the same GroupVersionKind and returns the value