code: func NewBytesQueue(initialCapacity int, maxCapacity int, verbose bool) *BytesQueue {
  	return &BytesQueue{
  		array:           make([]byte, initialCapacity),
  		capacity:        initialCapacity,
  		maxCapacity:     maxCapacity,
  		headerBuffer:    make([]byte, headerEntrySize),
  		tail:            leftMarginIndex,
  		head:            leftMarginIndex,
  		rightMargin:     leftMarginIndex,
  		verbose:         verbose,
  		initialCapacity: initialCapacity,
  	}
  }
docs: // NewBytesQueue initialize new bytes queue.
  // Initial capacity is used in bytes array allocation
  // When verbose flag is set then information about memory allocation are printed