input: import math
    
  def solveQuadratic(a: float, b: float, c: float) -> dict:
      """ Solves a quadratic equation of the form ax^2 + bx + c = 0 and returns its roots.
      The function returns a dictionary with a boolean 'status' indicating whether the
      solution has real roots and a list 'roots' containing the real roots if they exist.
      
      >>> solveQuadratic(1, 3, -4)
      {'status': True, 'roots': [-4.0, 1.0]}
      >>> solveQuadratic(1, 2, 1)
      {'status': True, 'roots': [-1.0]}
      >>> solveQuadratic(1, 0, 1)
      {'status': False, 'roots': []}
      """
      discriminant = (b**2) - (4*a*c)
      
      if discriminant < 0:
          return {"status": False, "roots": []}
      elif discriminant == 0:
          x = -b / (2*a)
          return {"status": True, "roots": [x]}
      else:
          x1 = (-b + math.sqrt(discriminant)) / (2*a)
          x2 = (-b - math.sqrt(discriminant)) / (2*a)
          return {"status": True, "roots": [x1, x2]}
output:     discriminant = (b**2) - (4*a*c)
      
      if discriminant < 0:
          return {"status": False, "roots": []}
      elif discriminant == 0:
          x = -b / (2*a)
          return {"status": True, "roots": [x]}
      else:
          x1 = (-b + math.sqrt(discriminant)) / (2*a)
          x2 = (-b - math.sqrt(discriminant)) / (2*a)
          return {"status": True, "roots": [x1, x2]}