code: func (c *Client) GetWAFRuleStatuses(i *GetWAFRuleStatusesInput) (GetWAFRuleStatusesResponse, error) {
  	statusResponse := GetWAFRuleStatusesResponse{Rules: []*WAFRuleStatus{}}
  	if i.Service == "" {
  		return statusResponse, ErrMissingService
  	}
  	if i.WAF == "" {
  		return statusResponse, ErrMissingWAFID
  	}
  
  	path := fmt.Sprintf("/service/%s/wafs/%s/rule_statuses", i.Service, i.WAF)
  	filters := &RequestOptions{Params: i.formatFilters()}
  
  	resp, err := c.Get(path, filters)
  	if err != nil {
  		return statusResponse, err
  	}
  	err = c.interpretWAFRuleStatusesPage(&statusResponse, resp)
  	// NOTE: It's possible for statusResponse to be partially completed before an error
  	// was encountered, so the presence of a statusResponse doesn't preclude the presence of
  	// an error.
  	return statusResponse, err
  }
docs: // GetWAFRuleStatuses fetches the status of a subset of rules associated with a WAF.