code: func DecodeBytes(b []byte, buf []byte) ([]byte, []byte, error) {
  	return decodeBytes(b, buf, false)
  }
docs: // DecodeBytes decodes bytes which is encoded by EncodeBytes before,
  // returns the leftover bytes and decoded value if no error.
  // `buf` is used to buffer data to avoid the cost of makeslice in decodeBytes when DecodeBytes is called by Decoder.DecodeOne.