code: func Uint64FromBytes(b []byte) (uint64, int) {
  	if len(b) < 8 {
  		return 0, -1
  	}
  
  	val := uint64(b[0]) | uint64(b[1])<<8 | uint64(b[2])<<16 | uint64(b[3])<<24 |
  		uint64(b[4])<<32 | uint64(b[5])<<40 | uint64(b[6])<<48 | uint64(b[7])<<56
  	return val, 8
  }
docs: // This function is a copy from the binary package, with some added error
  // checking to avoid panics. The function will return the value, and the number
  // of bytes read from the buffer. If the number of bytes is negative, then
  // not enough bytes were passed in and the return value will be zero.