code: func EncodeUint(b []byte, v uint64) []byte {
  	var data [8]byte
  	binary.BigEndian.PutUint64(data[:], v)
  	return append(b, data[:]...)
  }
docs: // EncodeUint appends the encoded value to slice b and returns the appended slice.
  // EncodeUint guarantees that the encoded value is in ascending order for comparison.