code: func (s *ScheduleActionSettings) Validate() error {
  	invalidParams := request.ErrInvalidParams{Context: "ScheduleActionSettings"}
  	if s.HlsTimedMetadataSettings != nil {
  		if err := s.HlsTimedMetadataSettings.Validate(); err != nil {
  			invalidParams.AddNested("HlsTimedMetadataSettings", err.(request.ErrInvalidParams))
  		}
  	}
  	if s.InputSwitchSettings != nil {
  		if err := s.InputSwitchSettings.Validate(); err != nil {
  			invalidParams.AddNested("InputSwitchSettings", err.(request.ErrInvalidParams))
  		}
  	}
  	if s.PauseStateSettings != nil {
  		if err := s.PauseStateSettings.Validate(); err != nil {
  			invalidParams.AddNested("PauseStateSettings", err.(request.ErrInvalidParams))
  		}
  	}
  	if s.Scte35ReturnToNetworkSettings != nil {
  		if err := s.Scte35ReturnToNetworkSettings.Validate(); err != nil {
  			invalidParams.AddNested("Scte35ReturnToNetworkSettings", err.(request.ErrInvalidParams))
  		}
  	}
  	if s.Scte35SpliceInsertSettings != nil {
  		if err := s.Scte35SpliceInsertSettings.Validate(); err != nil {
  			invalidParams.AddNested("Scte35SpliceInsertSettings", err.(request.ErrInvalidParams))
  		}
  	}
  	if s.Scte35TimeSignalSettings != nil {
  		if err := s.Scte35TimeSignalSettings.Validate(); err != nil {
  			invalidParams.AddNested("Scte35TimeSignalSettings", err.(request.ErrInvalidParams))
  		}
  	}
  	if s.StaticImageActivateSettings != nil {
  		if err := s.StaticImageActivateSettings.Validate(); err != nil {
  			invalidParams.AddNested("StaticImageActivateSettings", err.(request.ErrInvalidParams))
  		}
  	}
  
  	if invalidParams.Len() > 0 {
  		return invalidParams
  	}
  	return nil
  }
docs: // Validate inspects the fields of the type to determine if they are valid.