code: func (subs *consumers) add(tag string, consumer chan Delivery) {
  	subs.Lock()
  	defer subs.Unlock()
  
  	if prev, found := subs.chans[tag]; found {
  		close(prev)
  	}
  
  	in := make(chan *Delivery)
  	subs.chans[tag] = in
  
  	subs.Add(1)
  	go subs.buffer(in, consumer)
  }
docs: // On key conflict, close the previous channel.