code: func (d *ulReqDecoder) decodeCaps() stateFn {
  	d.line = bytes.TrimPrefix(d.line, sp)
  	if err := d.data.Capabilities.Decode(d.line); err != nil {
  		d.error("invalid capabilities: %s", err)
  	}
  
  	return d.decodeOtherWants
  }
docs: // Expected format: sp cap1 sp cap2 sp cap3...