code: def test_binary_floats(self):
      # check that floats hash equal to corresponding Fractions and Decimals
  
      # floats that are distinct but numerically equal should hash the same
      self.check_equal_hash(0.0, -0.0)
  
      # zeros
      self.check_equal_hash(0.0, D(0))
      self.check_equal_hash(-0.0, D(0))
      self.check_equal_hash(-0.0, D("-0.0"))
      self.check_equal_hash(0.0, F(0))
  
      # infinities and nans
      self.check_equal_hash(float("inf"), D("inf"))
      self.check_equal_hash(float("-inf"), D("-inf"))
  
      for _ in range(1000):
          x = random.random() * math.exp(
              random.random() * 200.0 - 100.0
          )
          self.check_equal_hash(x, D.from_float(x))
          self.check_equal_hash(x, F.from_float(x))
  
imports: import unittest
  import random
  import math
  import sys
  import operator
  from decimal import Decimal
  from fractions import Fraction
label_desc: Use image node_id 4 for calling the HashTest obj's underlying member method code with example usage: obj.test_binary_floats() without return types