code: func decodePrefix(d *advRefsDecoder) decoderStateFn {
  	if ok := d.nextLine(); !ok {
  		return nil
  	}
  
  	if !isPrefix(d.line) {
  		return decodeFirstHash
  	}
  
  	tmp := make([]byte, len(d.line))
  	copy(tmp, d.line)
  	d.data.Prefix = append(d.data.Prefix, tmp)
  	if ok := d.nextLine(); !ok {
  		return nil
  	}
  
  	if !isFlush(d.line) {
  		return decodeFirstHash
  	}
  
  	d.data.Prefix = append(d.data.Prefix, pktline.Flush)
  	if ok := d.nextLine(); !ok {
  		return nil
  	}
  
  	return decodeFirstHash
  }
docs: // The HTTP smart prefix is often followed by a flush-pkt.