code: func ReadFloat64(buf io.Reader) (ret float64, n int, err error) {
  	// byte-ordered floats http://stereopsis.com/radix.html
  	data := make([]byte, 8)
  	if n, err = buf.Read(data); err != nil {
  		return
  	}
  	bits := binary.BigEndian.Uint64(data)
  	ret = math.Float64frombits(bits ^ (((bits >> 63) - 1) | (1 << 63)))
  	return
  }
docs: // ReadFloat64 reads a memcmp-sortable float from buf (as written by
  // WriteFloat64). It also returns the number of bytes read (8, unless an error
  // occurs), and any read error encountered.