code: func (client *Client) GetRunstatusMaintenance(ctx context.Context, maintenance RunstatusMaintenance) (*RunstatusMaintenance, error) {
  	if maintenance.URL != "" {
  		return client.getRunstatusMaintenance(ctx, maintenance.URL)
  	}
  
  	if maintenance.PageURL == "" {
  		return nil, fmt.Errorf("empty Page URL for %#v", maintenance)
  	}
  
  	page, err := client.getRunstatusPage(ctx, maintenance.PageURL)
  	if err != nil {
  		return nil, err
  	}
  
  	for i := range page.Maintenances {
  		m := &page.Maintenances[i]
  		if m.Match(maintenance) {
  			if err := m.FakeID(); err != nil {
  				log.Printf("bad fake ID for %#v, %s", m, err)
  			}
  			return m, nil
  		}
  	}
  
  	return nil, fmt.Errorf("%#v not found", maintenance)
  }
docs: // GetRunstatusMaintenance retrieves the details of a specific maintenance.