code: func (client *Client) PaginateRunstatusServices(ctx context.Context, page RunstatusPage, callback func(*RunstatusService, error) bool) { // nolint: dupl
  	if page.ServicesURL == "" {
  		callback(nil, fmt.Errorf("empty Services URL for %#v", page))
  		return
  	}
  
  	servicesURL := page.ServicesURL
  	for servicesURL != "" {
  		resp, err := client.runstatusRequest(ctx, servicesURL, nil, "GET")
  		if err != nil {
  			callback(nil, err)
  			return
  		}
  
  		var ss *RunstatusServiceList
  		if err := json.Unmarshal(resp, &ss); err != nil {
  			callback(nil, err)
  			return
  		}
  
  		for i := range ss.Services {
  			if err := ss.Services[i].FakeID(); err != nil {
  				log.Printf("bad fake ID for %#v, %s", ss.Services[i], err)
  			}
  
  			if cont := callback(&ss.Services[i], nil); !cont {
  				return
  			}
  		}
  
  		servicesURL = ss.Next
  	}
  }
docs: // PaginateRunstatusServices paginates Services