docs: func (s *HlsGroupSettings) Validate() error {
  	invalidParams := request.ErrInvalidParams{Context: "HlsGroupSettings"}
  	if s.ConstantIv != nil && len(*s.ConstantIv) < 32 {
  		invalidParams.Add(request.NewErrParamMinLen("ConstantIv", 32))
  	}
  	if s.Destination == nil {
  		invalidParams.Add(request.NewErrParamRequired("Destination"))
  	}
  	if s.IndexNSegments != nil && *s.IndexNSegments < 3 {
  		invalidParams.Add(request.NewErrParamMinValue("IndexNSegments", 3))
  	}
  	if s.KeepSegments != nil && *s.KeepSegments < 1 {
  		invalidParams.Add(request.NewErrParamMinValue("KeepSegments", 1))
  	}
  	if s.SegmentLength != nil && *s.SegmentLength < 1 {
  		invalidParams.Add(request.NewErrParamMinValue("SegmentLength", 1))
  	}
  	if s.SegmentsPerSubdirectory != nil && *s.SegmentsPerSubdirectory < 1 {
  		invalidParams.Add(request.NewErrParamMinValue("SegmentsPerSubdirectory", 1))
  	}
  	if s.CaptionLanguageMappings != nil {
  		for i, v := range s.CaptionLanguageMappings {
  			if v == nil {
  				continue
  			}
  			if err := v.Validate(); err != nil {
  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CaptionLanguageMappings", i), err.(request.ErrInvalidParams))
  			}
  		}
  	}
  	if s.KeyProviderSettings != nil {
  		if err := s.KeyProviderSettings.Validate(); err != nil {
  			invalidParams.AddNested("KeyProviderSettings", err.(request.ErrInvalidParams))
  		}
  	}
  
  	if invalidParams.Len() > 0 {
  		return invalidParams
  	}
  	return nil
  }