input: Write a function to solve a quadratic equation given the coefficients \( a \), \( b \), and \( c \). The function should return a dictionary with the status of the solution and the list of roots. If the equation has no real roots, the status should be False and the roots list should be empty. If the equation has one real root, the status should be True and the roots list should contain one root. If the equation has two real roots, the status should be True and the roots list should contain both roots.
  
  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
  
  print(solveQuadratic(a, b, c)) #{'status': True, 'roots': [-4.0, 1.0]}
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]
          }