code: func (q *Queue) Add(elem interface{}) {
  	if q.count == len(q.buf) {
  		q.resize()
  	}
  
  	q.buf[q.tail] = elem
  	// bitwise modulus
  	q.tail = (q.tail + 1) & (len(q.buf) - 1)
  	q.count++
  }
docs: // Add puts an element on the end of the queue.