code: func DecodeUint(b []byte) ([]byte, uint64, error) {
  	if len(b) < 8 {
  		return nil, 0, errors.New("insufficient bytes to decode value")
  	}
  
  	v := binary.BigEndian.Uint64(b[:8])
  	b = b[8:]
  	return b, v, nil
  }
docs: // DecodeUint decodes value encoded by EncodeUint before.
  // It returns the leftover un-decoded slice, decoded value if no error.