code: func BaseProperties(obj BaseComputeResource) (*mo.ComputeResource, error) {
  	ctx, cancel := context.WithTimeout(context.Background(), provider.DefaultAPITimeout)
  	defer cancel()
  	var props mo.ComputeResource
  	if err := obj.Properties(ctx, obj.Reference(), nil, &props); err != nil {
  		return nil, err
  	}
  	return &props, nil
  }
docs: // BaseProperties returns the base-level ComputeResource managed object for a
  // BaseComputeResource, an interface that any base-level ComputeResource and
  // derivative object implements.
  //
  // Note that this does not return any cluster-level attributes.