code: func (p *Peer) Deliver(ctx context.Context, chunk storage.Chunk, priority uint8, syncing bool) error {
  	var msg interface{}
  
  	spanName := "send.chunk.delivery"
  
  	//we send different types of messages if delivery is for syncing or retrievals,
  	//even if handling and content of the message are the same,
  	//because swap accounting decides which messages need accounting based on the message type
  	if syncing {
  		msg = &ChunkDeliveryMsgSyncing{
  			Addr:  chunk.Address(),
  			SData: chunk.Data(),
  		}
  		spanName += ".syncing"
  	} else {
  		msg = &ChunkDeliveryMsgRetrieval{
  			Addr:  chunk.Address(),
  			SData: chunk.Data(),
  		}
  		spanName += ".retrieval"
  	}
  
  	ctx = context.WithValue(ctx, "stream_send_tag", nil)
  	return p.SendPriority(ctx, msg, priority)
  }
docs: // Deliver sends a storeRequestMsg protocol message to the peer
  // Depending on the `syncing` parameter we send different message types