input: Write a function to solve a quadratic equation given the coefficients a, b, and c. The function should return a dictionary containing a 'status' key indicating if real roots exist and a 'roots' key containing the list of real roots. If there are no real roots, the 'roots' key should contain an empty list. If there is exactly one real root, it should be the only element in the list. Otherwise, both real roots should be included in the list. If the discriminant is zero, there is only one real root. If the discriminant is negative, there are no real roots. If the discriminant is positive, there are two distinct real roots. Use the given example input and output to verify the correctness of the function.
  
  import math
    
  def solveQuadratic(a, b, c): 
      discriminant = (b**2) - (4*a*c);
      
      # If discriminant is negative there are no real roots.
      if (discriminant < 0): 
          return {
              "status": False,
              "roots": []
          }
      # If discriminant is zero, there is only one real roots.
      elif (discriminant == 0):
          x = -b/(2*a)
          return {
              "status": True,
              "roots": [x]
          }
      # Otherwise there are 2 real roots 
      else:
          x1 = (-b + math.sqrt(discriminant)) / (2*a); 
          x2 = (-b - math.sqrt(discriminant)) / (2*a); 
          return {
              "status": True,
              "roots": [x1, x2]
          }
  
  a = 1
  b = 3
  c = -4
  
  assert solveQuadratic(a, b, c) == {'status': True, 'roots': [-4.0, 1.0]}
  assert solveQuadratic(1, -2, 1) == {'status': True, 'roots': [1.0]}
  assert solveQuadratic(1, 0, 1) == {'status': False, 'roots': []}
output: import math
  
  def solveQuadratic(a, b, c): 
      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]
          }