code: func (r *reader) readBitsAsBytes(n uint32) []byte {
  	tmp := make([]byte, 0)
  	for n >= 8 {
  		tmp = append(tmp, r.readByte())
  		n -= 8
  	}
  	if n > 0 {
  		tmp = append(tmp, byte(r.readBits(n)))
  	}
  	return tmp
  }
docs: // readBitsAsBytes reads the given number of bits in groups of bytes