code: func (client *Client) PaginateRunstatusMaintenances(ctx context.Context, page RunstatusPage, callback func(*RunstatusMaintenance, error) bool) { // nolint: dupl
  	if page.MaintenancesURL == "" {
  		callback(nil, fmt.Errorf("empty Maintenances URL for %#v", page))
  		return
  	}
  
  	maintenancesURL := page.MaintenancesURL
  	for maintenancesURL != "" {
  		resp, err := client.runstatusRequest(ctx, maintenancesURL, nil, "GET")
  		if err != nil {
  			callback(nil, err)
  			return
  		}
  
  		var ms *RunstatusMaintenanceList
  		if err := json.Unmarshal(resp, &ms); err != nil {
  			callback(nil, err)
  			return
  		}
  
  		for i := range ms.Maintenances {
  			if err := ms.Maintenances[i].FakeID(); err != nil {
  				log.Printf("bad fake ID for %#v, %s", ms.Maintenances[i], err)
  			}
  			if cont := callback(&ms.Maintenances[i], nil); !cont {
  				return
  			}
  		}
  
  		maintenancesURL = ms.Next
  	}
  }
docs: // PaginateRunstatusMaintenances paginate Maintenances