code: func normalize(c context.Context, cfg *Config) error {
  	for _, p := range cfg.Projects.GetProject() {
  		p.Revision = cfg.revision
  	}
  	for _, v := range cfg.VMs.GetVms() {
  		for _, ch := range v.Amount.GetChange() {
  			if err := ch.Length.Normalize(); err != nil {
  				return errors.Annotate(err, "failed to normalize %q", v.Prefix).Err()
  			}
  		}
  		if err := v.Lifetime.Normalize(); err != nil {
  			return errors.Annotate(err, "failed to normalize %q", v.Prefix).Err()
  		}
  		v.Revision = cfg.revision
  		if err := v.Timeout.Normalize(); err != nil {
  			return errors.Annotate(err, "failed to normalize %q", v.Prefix).Err()
  		}
  	}
  	return nil
  }
docs: // normalize normalizes VMs durations by converting them to seconds, and sets
  // output-only properties.